Collapse column

Autor Thema: Office 2016 Objektvariable nicht festgelegt  (Gelesen 534 mal)

Offline StefKe

  • Full Member
  • ***
  • Beiträge: 100
    • Profil anzeigen
  • Office-KnowHow: Anfänger
  • VBA-KnowHow- : Mittelmäßig
  • Version [Office] : Office 2016
Office 2016 Objektvariable nicht festgelegt
« am: August 03, 2018, 10:15:45 Vormittag »
Hallochen allerseits, ich versuche grad Werte dem entsprechenden Datum zuzuordnen und habe den schnellen Code gebastelt. Leider erscheint nur ne Fehlermeldung an der Zeile:
Zeile = DatumsBereich.Find(SuchDatum).RowSub BuchungZuordnen()
Dim DatumsBereich As Range
Dim Zeile
Dim Buchung
Dim SuchDatum
Dim i

Set DatumsBereich = Range("A2:A1255")

    For i = 2 To 72
        SuchDatum = Range("BM" & i).Value
        Zeile = DatumsBereich.Find(SuchDatum).Row
        Buchung = Range("BN" & i).Value
        Range("BI" & Zeile).Value = Buchung
    Next i
End Sub
Wo liegt der Fehler?
Danke
Stefan
Hat sich erledigt - wenn man nach Werten sucht die es nicht gibt dann geht es eben so aus :-(
« Letzte Änderung: August 03, 2018, 10:42:32 Vormittag von StefKe »

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline maninweb

  • Global Moderator
  • Hero Member
  • *****
  • Beiträge: 1.063
    • Profil anzeigen
    • Excel Formula Translator
  • Office-KnowHow: Experte
  • VBA-KnowHow- : Sehr gut
  • Version [Office] : Office 2016
Antw: Office 2016 Objektvariable nicht festgelegt
« Antwort #1 am: August 04, 2018, 08:28:09 Vormittag »
Hallo,

Du kannst auch On Error Resume Next verwenden, um in einem solchen Fall nicht in den Fehler zu laufen.
On Error Resume Next ist aber nur dann sinnvoll zu verwenden, wenn Du weisst, dass der Code an sich
korrekt läuft und Du den bewusst provizieren Fehler übergehen möchtest. Ungetestet, da ich keine Daten
habe. Tipp: wenn Du schon deklarierst, würde ich dann auch Datentypen setzen. Die 2 Variants habe ich
hier nur gesetzt, weil ich den genauen Typ nicht kenne.

Code: Visual Basic
  1. Sub BuchungZuordnen()
  2.  
  3.   Dim DatumsBereich As Range
  4.   Dim Zeile         As Long
  5.   Dim Buchung       As Variant
  6.   Dim SuchDatum     As Variant
  7.   Dim i             As Long
  8.  
  9.   On Error Resume Next
  10.  
  11.   Set DatumsBereich = Range("A2:A1255")
  12.  
  13.   For i = 2 To 72
  14.    
  15.     SuchDatum = Range("BM" & i).Value
  16.    
  17.     Zeile = 0
  18.     Zeile = DatumsBereich.Find(SuchDatum).Row
  19.    
  20.     If Zeile > 0 Then
  21.    
  22.       Buchung = Range("BN" & i).Value
  23.       Range("BI" & Zeile).Value = Buchung
  24.    
  25.     End If
  26.    
  27.   Next i
  28.  
  29. End Sub

Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) from 01/2011 - 06/2019
https://de.excel-translator.de :: Online Excel-Formel-Übersetzer :: Alle Übersetzungen der Excel Funktionen & Fehlerwerte

Offline StefKe

  • Full Member
  • ***
  • Beiträge: 100
    • Profil anzeigen
  • Office-KnowHow: Anfänger
  • VBA-KnowHow- : Mittelmäßig
  • Version [Office] : Office 2016
Antw: Office 2016 Objektvariable nicht festgelegt
« Antwort #2 am: August 04, 2018, 16:37:59 Nachmittag »
Danke, der Code diente dazu 72 Werte dem jeweiligen Datum zuzuordnen und war nur für 'ne einmalige Verwendung. Das Problem war, das die Vergleichsliste mit einem zeitigeren Datum begann als die Zuordnungsliste. Ein Blick in die Hilfe und die Daten (was ist eigentlich der Plural von Datum?) hatte den AHA-Effekt zu folge :-)
DankeStefan

Wenn du dich noch intensiver mit Excel beschäftigen möchtest, dann empfiehlt sich ein Online-Kurs,
in dem du sehr viel über Excel erfährst und das gelernte umgehend in der Praxis anwenden kannst.