Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
548to552
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
548to552
548to552
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Falsche Datum suche mit Makro

Falsche Datum suche mit Makro
17.01.2005 10:05:20
Heinz
Hallo Leute
Habe in mehreren Tabellenblättern in Spalte A4 bis A52 ein fortl.Datum stehen.
Wenn ich über eine Inputbox das Datum suche, liefert es mir immer falsche Werte.
Und wenn es das Datum nicht gibt sollte die Fehlermeldung kommen " Datum nicht vorhanden"
Bitte um Hilfe.
Danke

Sub MultiSuche()
Dim Sh As Worksheet
Dim GZelle As Range
Dim FStelle$
Dim SBegriff
SBegriff = InputBox("Bitte Suchbegriff eingeben:")
For Each Sh In Worksheets
Sh.Activate
Set GZelle = Sh.Cells.Find(SBegriff)
If Not GZelle Is Nothing Then
FStelle = GZelle.Address
Do
GZelle.Activate
If MsgBox("Weiter", vbYesNo + vbQuestion) = vbNo Then Exit Sub
Set GZelle = Cells.FindNext(After:=ActiveCell)
If GZelle.Address = FStelle Then Exit Do
Loop
End If
Next Sh
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Falsche Datum suche mit Makro
17.01.2005 10:14:18
Peter
Hallo Heinz,
deine Variable SBegriff sollte ein Datum sein, dann findet die Routine auch etwas und bei nicht vorhanden kommt eine Msg.
Gruß Peter


Sub MultiSuche()
    Dim Sh As Worksheet
    Dim GZelle As Range
    Dim FStelle$
    Dim SBegriff  As Date
    SBegriff = InputBox("Bitte Suchbegriff eingeben:")
    For Each Sh In Worksheets
        Sh.Activate
        Set GZelle = Sh.Range("A4:A52").Find(SBegriff)
        If Not GZelle Is Nothing Then
            FStelle = GZelle.Address
            Do
                GZelle.Activate
                If MsgBox("Weiter", vbYesNo + vbQuestion) = vbNo Then Exit Sub
                Set GZelle = Cells.FindNext(After:=ActiveCell)
                If GZelle.Address = FStelle Then Exit Do
            Loop
         Else
           MsgBox "das gesuchte Datum wurde nicht gefunden.", 64, _
                  "Das Datum ist nicht vorhanden."
        End If
    Next Sh
End Sub


Anzeige
AW: Falsche Datum suche mit Makro
17.01.2005 10:23:03
Heinz
Danke Peter
AW: Falsche Datum suche mit Makro
17.01.2005 10:50:16
Heinz
Hallo Peter
Wenn das Makro kein übereistimmentes Datum findet, Schreibt es für jedes Tabellenblatt "Das gesuchte Datum wurde nicht gefunden".Kann man diese Fehlermeldung auf 1x beschränken?
Danke Heinz
AW: Falsche Datum suche mit Makro
17.01.2005 10:57:17
Peter
Hallo Heinz,
dann versuche es so:


'
'   suchen Datum im Bereich A4:A52 - ggf. in allen Blättern
'
Sub MultiSuche()
Dim Sh        As Worksheet
Dim GZelle    As Range
Dim FStelle   As String
Dim SBegriff  As Date
Dim bSchalter As Boolean
    bSchalter = False
    SBegriff = Date
    
    SBegriff = InputBox("Bitte als Suchbegriff ein Datum eingeben:", "Datums-Suche", SBegriff)
    
    For Each Sh In Worksheets
        Sh.Activate
        Set GZelle = Sh.Range("A4:A52").Find(SBegriff)
        If Not GZelle Is Nothing Then
           FStelle = GZelle.Address
           Do
              GZelle.Activate
              If MsgBox("Weiter suchen ?", vbYesNo + vbQuestion) = vbNo Then Exit Sub
              Set GZelle = Cells.FindNext(After:=ActiveCell)
              If GZelle.Address = FStelle Then Exit Do
           Loop
         Else
           If bSchalter = False Then
              MsgBox "das gesuchte Datum wurde nicht gefunden.", 64, _
                     "Das Datum ist nicht vorhanden."
              bSchalter = True
           End If
        End If
    Next Sh
    
End Sub


Gruß Peter
Anzeige
AW: Falsche Datum suche mit Makro
17.01.2005 11:05:55
Heinz
Hallo Peter
Ich weiß schön langsam gehe ich Dir auf den Keks.
Danke für Deine großartige Unterstützung. Jetze kommt die Fehlermeldung nur einmal dafür macht es mir das letzte Tabellenblatt auf.
Danke Heinz
Eventuell dürfte ich dir meine Arbeitsliste zum überarbeiten senden?
AW: Falsche Datum suche mit Makro
17.01.2005 11:25:10
Peter
Hallo Heinz,
du sagst in deinem Makro, dass es alle Blätter durchsuchen soll (For each sheet ...)
dann bleibt es nicht aus, dass zuletzt das letzte Blatt das aktive ist.
Willst du nur ein bestimmtes Blatt durchsuchen, dann mach For/Next zum Kommentar
und gib gezielt das Blatt an, das durchsucht werden soll.


'For Each Sh In Worksheets
'    Sh.Activate
    Set Sh = Worksheets("Tabelle2")        <== hier Blatt "Tabelle2"
.
.
' Next sh


Gruß Peter
Anzeige
AW: Falsche Datum suche mit Makro
17.01.2005 11:51:16
Heinz
Danke Danke Peter
Jetzt ist mein Problem gelöst.
Heinz

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige