Wir wünschen allen Forenteilnehmern ein frohes Fest und einen guten Rutsch ins neue Jahr. x

Bestimmte Namen aus Spalte in MsgBox
#1
Hallo!

Ich möchte in einer MsgBox jene Namen aus der gesamten Spalte B angezeigt bekommen, wenn zu dem jeweiligen Namen in der Spalte S das Wort "CP" steht.
Die Namen in der Spalte B fangen aber erst ab der Zeile 5 an, denn in der erste Zeile steht nämlich die Überschrift.

Ich habe bereits mit dem Code angefangen, welcher aber noch korrekt arbeitet, da alle Namen inkl. Überschrift angezeigt werden:

PHP-Code:
Dim rng As Rangestrg As String
For Each rng In Range("B:B")
If 
rng.Value <> "" Then strg strg vbLf rng.Value
Next
MsgBox strg 


Ich hoffe, dass mir jemand helfen kann.
Excel Version 2016
Antworten Top
#2
Hallöchen,

warum prüfst Du dann nicht, ob da CP enthalten ist? Du prüfst ja, ob überhaupt was in den Zellen steht ...
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#3
Ich prüfe, ob in der Spalte B etwas drinnen steht, aber wie mache ich das, dass ich prüfe, ob in der Spalte S "CP" steht?
Excel Version 2016
Antworten Top
#4
Hallöchen,

z.B. indem Du 17 Spalten neben B nachschaust. Zähle sicherheitshalber mal nach, ob die 17 stimmt Smile

If rng.Value <> "" And rng.offset(0,17).value = "CP" Then ...
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#5
Hi,

wenn man zu faul zum nachzählen ist, funktioniert auch

If rng <> "" And cells(rng.row, "S") = "CP" Then ...
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
Antworten Top
#6
Hallo!

Ich habe leider noch etwas vergessen. Wie müsste der Code aussehen, wenn ich noch zusätzlich neben dem Namen den Betrag daneben in der MsgBox angezeigt haben will? Die Beträge stehen in der Spalte E.
Hier mein aktueller Code:


Code:
Sub momStand()
With ThisWorkbook.Worksheets("Panels")
Dim rng As Range, strg As String
For Each rng In Range("B:B")
If rng.Value <> "" And rng.Offset(0, 17).Value = "CP" Then strg = strg & vbLf & rng.Value
Next
MsgBox "mom. Stand:  € " & Format(.Range("R2").Value, "#,##0.00") & String(2, vbNewLine) & _
strg
End With
End Sub

ich glaube, ich habe es:

Code:
If rng.Value <> "" And rng.Offset(0, 17).Value = "CP" Then strg = strg & vbLf & rng.Value & ":  € " & Format(rng.Offset(0, 3).Value, "#,##0.00")
Excel Version 2016
Antworten Top
#7
Thumps_up
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste