Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
548to552
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
548to552
548to552
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Spalte markieren mit VBA

Spalte markieren mit VBA
18.01.2005 15:40:35
Marco
Hallo Forum,
ich habe folgenden VBA-code, der mir aus vier verschiedenen Tabellenblättern, die alle in Zeile 4 fortlaufende Daten stehen haben, das aktuelle Datum heraussucht und die Zelle mit dem aktuelen Datum im richtigen Tabellenblatt markiert:

Private Sub Workbook_Open()
AktDatum = Date
AktBlatt = 1
If (AktDatum) > Range("IT4").Value Then AktBlatt = 2
If (AktDatum) > Range("IT4").Value Then AktBlatt = 3
If (AktDatum) > Range("IT4").Value Then AktBlatt = 4
Select Case AktBlatt
Case 1
Blatt = "Markteinführungskonzept_1"
Case 2
Blatt = "Markteinführungskonzept_2"
Case 3
Blatt = "Markteinführungskonzept_3"
Case 4
Blatt = "Markteinführungskonzept_4"
End Select
Sheets(Blatt).Select
For Spalte = 1 To ActiveSheet.UsedRange.Columns.Count
If Cells(4, Spalte) = AktDatum Then
Cells(4, Spalte).Select
Exit Sub
End If
Next
MsgBox (AktDatum & " nicht gefunden")
End Sub

Ich möchte den Code dahingehend verändern, dass Excel mir anstatt nur die eine Zelle mit dem Datum die ganze Spalte markiert.
Wie stelle ich das an?
Vielen Dank für Eure Hilfe

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalte markieren mit VBA
Reinhard
Hi Marco,
AktBlatt ist immer entweder 1 oder 4, case 2 bzw 3 kann nie eintreten?!
Anstatt Select case kannst du hier auch das nehmen:
Blatt = "Markteinführungskonzept_" & AktBlatt

Sheets(Blatt).Select
For Spalte = 1 To ActiveSheet.UsedRange.Columns.Count
If Cells(4, Spalte) = AktDatum Then
Cells(4, Spalte).EntireColumn.Select
Exit Sub
End If
Next Spalte
Gruß
Reinhard
AW: Spalte markieren mit VBA
18.01.2005 16:07:23
Marco
Hallo Reinhard,
danke schon mal für den Tipp mit "Entire.Column.select". Das hat funktioniert.
Du hattest Recht: Case 2 und 3 können tatsächlich nicht eintreten. Da habe ich einen Fehler gemacht, denn die Fälle sollen eintreten können. Und zwar steht in der Zelle IT4 eines jeden Tabellenblattes das späteste Datum drin, das das Tabellenblatt beinhaltet. Wenn das aktuelle Datum nun größer ist als das in IT4 von Tabellenblatt 1, dann soll in Tabellenblatt 2 gesucht werden. Wenn das Datum aber auch größer ist, als in IT4 von Tabellenblatt 2, dann soll in Tabellenblatt 3 gesucht werden u.s.w.
Der code von mir tut das nicht, sondern sucht nur in Tabellenblatt 1 und 4.
Wie kann ich denn erreichen, dass wie oben beschrieben in jedem Tabellenblatt gesucht wird?
Danke,
Marco
Anzeige
AW: Spalte markieren mit VBA
18.01.2005 16:14:57
Marco
Hallo,
ich habs selbst herausgefunden. Habe einfach den Tabellenblattnamen, in dem die Zelle IT4 geprüft werden soll + "!" vor die Zelle im Code geschrieben, also ("Markteinführungskonzept_2!IT4")
Sorry für die Umstände und danke nochmal!
Marco

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige