Makro Excel: Variable Spalte mit bestimmten Namen markieren?

3 Antworten

Meinst du sowas?

Sub FindeName()

Dim sName
Dim zeile
Dim spalte

spalte = 3 ' 3 Steht für Spalte C
'Eingabe des Namens
sName = InputBox("Namen eingeben: ", "Name")
'Zähle bis zur letzten Zeile
For zeile = 1 To Cells(Rows.Count, spalte).End(xlUp).Row
    'Falls Zelle=Name färbe Zeile grün
    If Cells(zeile, spalte).Value = sName Then
        Cells(zeile, spalte).entireRow.Interior.Color = RGB(0, 255, 0)
    Else
        Cells(zeile, spalte).entireRow.Interior.Color = RGB(255, 255, 255)
    End If
Next

End Sub
Woher ich das weiß:eigene Erfahrung

Also wenn das gesamte Makro nur aus dieser einen Aufgabe besteht, eine Spalte unter einer bestimmten Bedingung gelb zu markieren, kannst du doch auch die Bedingte Formatierung anwenden

Sub Farbe()
Range("Müller").Interior.ColorIndex = 3   '3 ist rot
End Sub

Du solltest aber vermeiden da Umlaute für die Namen zu nutzen.

Woher ich das weiß:Berufserfahrung – IT-Administrator (i.R.)

DeeDee07  28.10.2020, 22:47

Vielleicht ist mit "Namen" nicht die Zuweisung eines Namens zu einem Bereich gemeint, sondern nur die Überschrift. Excel-Namen sind ja normalerweise nicht variabel im Bereich.

Oubyi, UserMod Light  28.10.2020, 23:58
@DeeDee07

Da könntest Du recht haben. Ich hatte halt gedacht, wer wendet das Makro auf verschiedene Arbeitsblätter an, in denen der Name für verschiedene Spalten vergeben ist. Aber wenn als Erläuterung nur "....geht nicht" kommt...!?