Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1448to1452
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 auslesen

Zeilennummer auslesen
05.10.2015 13:48:32
Leah
Hallo
Ich hab letzte Woche schon mal geschrieben und hier super Hilfe bekommen, müsste jetzt aber etwas ändern und bekomms nicht hin.
Also, hier die Ausgangslage - ich hab 3 Fragen:
- Bei Frage 1 muss ein Feld im Range c24:f24 mit x ausgefüllt sein, aber nur eines, nicht mehrere
- Bei Frage 2 muss ein Feld im Range c40:f40 mit x ausgefüllt sein, aber nur eines, nicht mehrere
- Bei Frage 3 muss ein Feld im Range c46:f46 mit x ausgefüllt sein, aber nur eines, nicht mehrere
Ich möchte auch in der MsgBox nur die Zeilennummer einmal aufgelistet haben.
Hier der Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim Msg As String
If ActiveSheet.Name = "Kompetenznachweis" Then
Msg = CheckZellen(Msg, Range("C24:F24"))
Msg = CheckZellen(Msg, Range("C40:F40"))
Msg = CheckZellen(Msg, Range("C46:F46"))
If Len(Msg) Then
MsgBox "Fehlende oder zu viel Werte in den Zeilen:" & vbCr & Msg & vbCr & vbCr & " _
Bitte korrigieren.", 48, " FALSCHE ANGABEN"
Cancel = True
End If
End If
End Sub

Private Function CheckZellen(sMsg As String, rng As Range) As String
Dim Zelle As Range
If WorksheetFunction.CountIf(rng, "x") = 0 Then
For Each Zelle In rng
If IsEmpty(Zelle) Then sMsg = sMsg & vbCr & Zelle.Row
Next Zelle
ElseIf WorksheetFunction.CountIf(rng, "x") > 1 Then
For Each Zelle In rng
If IsEmpty(Zelle) Then sMsg = sMsg & vbCr & Zelle.Row
Next Zelle
End If
CheckZellen = sMsg
End Function
Hoffentlich hab ich mich verständlich ausgedrückt.
Danke euch schon mal und liebe Grüsse
Leah

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilennummer auslesen
05.10.2015 14:45:46
fcs
Hallo Lea,
wenn du nicht an den Werten in einzelnen Zellen interessiert bis, dann kannst du die For-Nex-Schleifen weglassen.
Gruß
Franz
Private Function CheckZellen(sMsg As String, rng As Range) As String
Dim bolFehler As Boolean
Select Case WorksheetFunction.CountIf(rng, "x")
Case 0, Is > 1
sMsg = sMsg & vbCr & rng.Row
End Select
CheckZellen = sMsg
End Function

AW: Zeilennummer auslesen
05.10.2015 14:55:36
Leah
Hallo Franz
Super, das hab ich gesucht... vielen dank
Gruss
Leah
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige