Microsoft Excel

Herbers Excel/VBA-Archiv

Überprüfen ob Zelle leer + Check

Betrifft: Überprüfen ob Zelle leer + Check von: Norbert
Geschrieben am: 10.09.2020 21:02:02

Hallo,

ich möchte überprüfen, ob die Zelle A1 im ersten Worksheet leer ist und wenn nicht, ob in A1 eine 6-stellige Ziffernreihenfolge steht z.B. 123456 oder 98743 usw.
Ist das nicht der Fall (leer oder eben keine 6 Ziffern in der Zelle), soll ein Kommentar mit der Meldung "Ziffer fehlt" in der Zelle A1 eingeführt werden.

Ich benötige das in VBA, weil ich viele verschiedene Workbooks zu überprüfen habe und deshalb eine Excel-Formel hier keine große Hilfe ist. VBA würde mir sehr helfen.

Vielleicht kann mir ja jemand helfen?

Beste Grüße
Norbert

Betrifft: AW: Überprüfen ob Zelle leer + Check
von: Norbert
Geschrieben am: 10.09.2020 21:03:54

Nachtrag: bei meiner zweiten Ziffernreihenfolge fehlt was, ich meine natürlich z.B. 987431. Auf jeden Fall 6 Ziffern. Entschuldigung.

Beste Grüße
Norbert

Betrifft: AW: Überprüfen ob Zelle leer + Check
von: JoWE
Geschrieben am: 10.09.2020 21:24:32

Hallo Norbertm

meinst Du so?
Sub testeInhaltA1()
    If Sheets(1).Range("A1").Value >= 100000 _
        Or Range("A1").Value <= 999999 _
        Or Range("A1") = "" Then
        Sheets(1).Range("A1").AddComment ("Ziffer fehlt")
    End If
End Sub
Gruß
Jochen

Betrifft: AW: Überprüfen ob Zelle leer + Check
von: Norbert
Geschrieben am: 10.09.2020 21:57:02

Hallo Jochen,

vielen Dank für Deine schnelle Hilfe. Das kommt schon sehr nah an das dran, was ich benötige :- )
Nur leider überprüft das Makro ja nicht, ob eine 6-stellige Ziffernreihenfolge in A1 enthalten ist, sondern "nur" ob sich die Reihenfolge in einer bestimmten Range befindet, oder? Gab es in VBA nicht die Möglichkeit explizit nach Ziffern in Form einer Musterüberprüfung zu checken? Oder ist das identisch zu Deiner Überprüfung?

Danke vielmals.

Norbert

Betrifft: AW: Überprüfen ob Zelle leer + Check
von: Daniel
Geschrieben am: 10.09.2020 22:09:57

Hi
naja, ein Zahl mit 6 Ziffern ist größergleich 100.000 und kleiner gleich 999.999
wenn du da nicht mit kommazahlen reingehst, sollte das passen.

alternativ kannst du auch eine Prüfung auf 6 Ziffern machen, das würde sich dann anbieten, wenn die Werte Texte sind und auch führende Nullen zulässig sind (z.B "012345")

if .Range("A1").Value Like "######" then

# ist der Joker für eine Ziffer.

Gruß Daniel

Betrifft: noch nicht eindeutig ...
von: Matthias L
Geschrieben am: 10.09.2020 23:03:13

Hallo,

Du solltest mal noch dazuschreiben wie sich der Inhalt der Zelle darstellt!
Ist es alleinig eine 6 stellige Zahl in der Zelle (wie: 123456),
oder kann die 6 stellige Ziffernfolge auch innerhalb eines Strings auftreten.
wie z.B. im Text: "Wir hatten gestern 111111 Zählungen"

Gruß Matthias

Betrifft: AW: Überprüfen ob Zelle leer + Check
von: GerdL
Geschrieben am: 10.09.2020 22:27:51

Moin
Sub Unit()

    With Worksheets(1).Cells(1, 1)
        
        .ClearComments
        If Not .Cells Like "[1-9]#####" Then .AddComment ("Keine sechsstellige Zahl!")
        
    End With

End Sub

Gruß Gerd

Betrifft: AW: Überprüfen ob Zelle leer + Check
von: Norbert
Geschrieben am: 11.09.2020 12:02:34

Hallo an alle,

vielen Dank für eure Hilfe. Dank euch habe ich es implementiert bekommen.

Beste Grüße
Norbert

Beiträge aus dem Excel-Forum zum Thema "Überprüfen ob Zelle leer + Check"