Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1788to1792
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

MsgBox

MsgBox
30.10.2020 08:50:49
xtian
Guten morgen,
ich habe 2 Punkte wo ich leider nicht weiterkomme. Ich hoffe es kann mir jemand helfen.
Das Makro prüft, ob die Texte in Spalte 8 nicht länger als 20 Zeichen lang sind.
Problem 1: Sind die Texte nicht länger als 20 Zeichen, soll eine MsgBox mit den Worten
"Alles Ok" kommen.
Problem 2: Weiterführend würde ich gerne auch noch prüfen lassen, ob in den Texten
ein ö oder ä oder ü vorhanden ist.
Sub DateinamePruefen()
Dim i As Long
Dim DName As String
Dim LRow As Long
LRow = Cells(Rows.Count, 1).End(xlUp).Row
For i = 18 To 50 'LRow
DName = Cells(i, 8)
If Len(DName) > 20 Then
Cells(i, 8).Select
End If
Next
End Sub
Wie bekomme ich das hin?
Gruß
Christian

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: MsgBox
30.10.2020 09:05:23
Nepumuk
Hallo Christian,
so:
Sub DateinamePruefen()
    Dim i As Long
    Dim LRow As Long
    Dim blnFound As Boolean
    LRow = Cells(Rows.Count, 1).End(xlUp).Row
    For i = 18 To 50 'LRow
        If Len(Cells(i, 8).Text) > 20 Then
            Cells(i, 8).Select
            blnFound = True
            Exit For
        End If
    Next
    If Not blnFound Then MsgBox "Alles in Ordnung."
End Sub

Gruß
Nepumuk
Anzeige
AW: MsgBox
30.10.2020 09:16:40
Oberschlumpf
Hallo Christian,
verwende zusätzlich wegen der Umlaute noch diesen Code, den der 1. Antworter wohl vergessen hat ;-) :

If Instr(LCase(DName),"ä") > 0 Or _
Instr(LCase(DName),"ö") > 0 Or _
Instr(LCase(DName),"ü") > 0 Then
Cells(i, 8).Select
blnFound = True
Exit For
End If

Und diesen Code setzt du direkt unterhalb der 1. If-Bedingung.
LCase() "findet" auch großgeschriebene Umlaute. So musst du nicht eine zusätzliche If-Bedingung einbauen.
Hilfts?
Ciao
Thorsten
AW: MsgBox
30.10.2020 09:45:03
xtian
Hallo Thorsten,
vielen Dank und ein schönes Wochenende.
Gruß
Christian
Anzeige
AW: MsgBox
30.10.2020 09:44:30
xtian
Hallo Nepumuk,
vielen Dank und ein schönes Wochenende.
Gruß
Christian
AW: MsgBox
30.10.2020 10:46:21
xtian
Hallo,
ich benötige dann doch noch einmal Hilfe. Makro funktioniert, aber
sobald jetzt der erste Fehler gefunden wurde (z.B. Länge Datei)
bricht das Makro ab. Hat die nächste Zelle z.B. ein ä in der Datei,
wird das nicht entsprechend markiert.
Sub DateinamePruefen()
Dim i As Long
Dim LRow As Long
Dim blnFound As Boolean
LRow = Cells(Rows.Count, 1).End(xlUp).Row
For i = 18 To 50
If Len(Cells(i, 8).Text) > 20 _
Or InStr(LCase(Cells(i, 8)), "ü") > 0 Or InStr(LCase(Cells(i, 8)), "ö") > 0 Or InStr( _
LCase(Cells(i, 8)), "ä") > 0 _
Or InStr(LCase(Cells(i, 8)), "ß") > 0 Or InStr(LCase(Cells(i, 8)), " ") > 0 Then
Cells(i, 8).Font.ColorIndex = 3
blnFound = True
Exit For
End If
Next
If Not blnFound Then MsgBox "Alles in Ordnung."
End Sub
Gruß
Christian
Anzeige
AW: MsgBox
30.10.2020 10:51:10
xtian
Habe es rausgefunden- Exit for muss raus. Trotzdem vielen Dank.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige