Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1808to1812
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeilennummer aus Variable

Zeilennummer aus Variable
02.02.2021 13:02:04
Daniel
Hallo zusammen,
ich bin komplett neu hier und habe bisher auch nur ein paar Einsteiger-VBA Tutorials angeschaut.
An folgender Aufgabenstellung komme ich gerade nicht weiter:
Zuerst speichere ich das aktuelle Datum in der Variable Jetzt - das klappt
Danach möchte ich herausfinden in welcher Zeile in meinem Arbeitsblatt dieses Datum steht und diese Zahl in eine Variable schreiben. Leider bekomme ich mit der Funktion .Row einen Fehler beim Ausführen.
Am Ende möchte ich die Zeilennummer in einer Variablen stehen haben mit der ich weiterarbeiten kann.
Ich hoffe ihr versteht mein Aufgabenstellung.
Hier mein Code:
Sub Werte_anhaengen()
'Die Inhalte des Eingabebereichs an entsprechende Zeile mit heutigem Datum anhängen
Dim Jetzt As Date
Jetzt = CDate(Day(Now()) & "." & Month(Now()) & "." & Year(Now()))
MsgBox "Das heutige Datum lautet: " & Jetzt, vbYesNo + vbInformation, "Information"
Dim Bereich As Range
Dim Zelle As Range
Dim Zeile
Set Bereich = Sheets("Status").Columns("B")
Set Zelle = Bereich.Find(what:=Jetzt)
'Set Zeile = Zelle.Row
MsgBox "Das heutige Datum befindet sich in Zelle: " & Zelle.Address, vbYesNo + vbInformation, "Information"
' MsgBox "Das heutige Datum befindet sich in Zeile: " & Zeile, vbYesNo + vbInformation, "Information"
Herzlichen Dank für eure Unterstützung im Voraus.
VG Daniel

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: nimm Match
02.02.2021 13:13:37
hary
Moin
Datum und find vertragen sich nicht so gut.
Sub Werte_anhaengen()
Dim a As Variant
Dim zeile As Long
a = Application.Match(CLng(Date), Columns(2), 0) '--2 ist SpalteB
If IsNumeric(a) Then
zeile = a
Else
MsgBox "Datum nicht vorhanden"
End If
End Sub

gruss hary
AW: nimm Match
02.02.2021 13:32:01
Daniel
Hallo Hary,
vielen Dank für Deine schnelle Hilfe!
Kannst Du mir auch gleich sagen wie ich zwei Zellinhalte aus zum Beispiel C10 und D10 in die entsprechende Zeile (welche wir gerade herausgefunden haben) kopieren kann? (die Spalte soll gleich bleiben)
Also zum Beispiel Zellinhalt aus C10 nach Czeile und D10 nach Dzeile. Ich hoffe das ist so verständlich...
Gruß
Daniel
Anzeige
AW: nimm Match
02.02.2021 13:45:33
hary
Moin
Wenn ich dich richtig verstanden habe!?
Sub Werte_anhaengen()
Dim a As Variant
Dim zeile As Long
a = Application.Match(CLng(Date), Columns(2), 0) '--2 ist SpalteB
If IsNumeric(a) Then
Cells(a, "C") = Range("C10")
Cells(a, "D") = Range("D10")
Else
MsgBox "Datum nicht vorhanden"
End If
End Sub

gruss hary
AW: nimm Match
02.02.2021 14:20:49
Daniel
Hervorragend! Das ging ja super schnell.
Vielen Dank und Gruß
Daniel
AW: Zeilennummer aus Variable
02.02.2021 13:21:25
Nepumuk
Hallo Daniel,
würde ich so machen:
Public Sub Werte_anhaengen()
    
    'Die Inhalte des Eingabebereichs an entsprechende Zeile mit heutigem Datum anhängen
    
    Dim vntReturn As Variant
    Dim objCell As Range
    
    MsgBox "Das heutige Datum lautet: " & Date, vbInformation, "Information"
    
    vntReturn = Application.Match(Clng(Date), Worksheets("Status").Columns(2), False)
    
    If IsError(vntReturn) Then
        MsgBox "Datum nicht gefunden.", vbExclamation, "Hinweis"
    Else
        Set objCell = Worksheets("Status").Cells(vntReturn, 2)
        MsgBox "Das heutige Datum befindet sich in Zelle: " & objCell.Address, vbInformation, "Information"
    End If
End Sub

Gruß
Nepumuk
Anzeige
AW: Zeilennummer aus Variable
02.02.2021 13:33:24
Daniel
Hi
Zunächsteinmal solltest du angeben, ob du in den Formeltexten suchen willst oder in den Formelergebnissen LookIn:=xlvalues/xlformulas)
.Find kann beides.
Gibt man es nicht an, dann wird die Einstellung der letzten Suche verwendet, das kann irgendwas sein.
.Find mit Datum ist schwierig.
Sucht man in den Values, so muss der Suchwert dem angezeigten Text entsprechen.
Verwendet man das Standard-Datumsformat, so muss auch in einem deutschen Excel für den Suchtext das amerikanische Format verwendet werden.
Also sehr verwirrend.
Aber .Find brauch man nur, wenn man einen rechteckigen Suchbereich mit mehren Zeilen und mehreren Spalten durchsuchen will.
Steht alles in einer Zeile oder Spalte, dann kann man besser wie von Hary beschrieben mit Applucation.Match nach dem Ganzzahlwert des Datums suchen.
Aber auch das ist meistens nicht notwendig.
Liegt ein Kalender vor, in dem alle Datumswerte ohne Lücken in gleichmäßigen Abstand aufsteigend sortiert vorliegen, kann man die Position des gesuchten Datums auch berechnen nach dem Schema:
=(Gesuchtes_Datum - Start_Datum) * Abstand + Position_Start_Datum
Suchen mit Match muss man nur, wenn die Auflistung Lücken hat oder nicht sortiert ist oder die Abstände unregelmäßig sind.
Gruß Daniel
Anzeige
AW: Zeilennummer aus Variable
02.02.2021 13:33:24
Daniel
Hi
Zunächsteinmal solltest du angeben, ob du in den Formeltexten suchen willst oder in den Formelergebnissen LookIn:=xlvalues/xlformulas)
.Find kann beides.
Gibt man es nicht an, dann wird die Einstellung der letzten Suche verwendet, das kann irgendwas sein.
.Find mit Datum ist schwierig.
Sucht man in den Values, so muss der Suchwert dem angezeigten Text entsprechen.
Verwendet man das Standard-Datumsformat, so muss auch in einem deutschen Excel für den Suchtext das amerikanische Format verwendet werden.
Also sehr verwirrend.
Aber .Find brauch man nur, wenn man einen rechteckigen Suchbereich mit mehren Zeilen und mehreren Spalten durchsuchen will.
Steht alles in einer Zeile oder Spalte, dann kann man besser wie von Hary beschrieben mit Applucation.Match nach dem Ganzzahlwert des Datums suchen.
Aber auch das ist meistens nicht notwendig.
Liegt ein Kalender vor, in dem alle Datumswerte ohne Lücken in gleichmäßigen Abstand aufsteigend sortiert vorliegen, kann man die Position des gesuchten Datums auch berechnen nach dem Schema:
=(Gesuchtes_Datum - Start_Datum) * Abstand + Position_Start_Datum
Suchen mit Match muss man nur, wenn die Auflistung Lücken hat oder nicht sortiert ist oder die Abstände unregelmäßig sind.
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige