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

VBA Code erweitern

VBA Code erweitern
27.10.2008 17:13:29
Uwe
Hallo Forum,
kann mir jemand ein Tip geben, wie ich den folgenden VBA Code auf weitere Spalten erweitern kann.
Es sollen folgende Spalten dazu: 18 - 28, 32 - 42, 46 - 56, 60 - 70

Private Sub aktualisieren_montag_Click()
Dim wks As Worksheet, lngSpalte As Long
Set wks = ActiveSheet
With wks
'Spalten D bis N abarbeiten
For lngSpalte = 4 To 14
'Eintrag in Zeile 6 der Spalten prüfen
Select Case .Cells(6, lngSpalte).Value
Case "frei", "krank", "url"
.Range(.Cells(7, lngSpalte), .Cells(43, lngSpalte)).ClearContents
Case "früh"
.Range(.Cells(21, lngSpalte), .Cells(23, lngSpalte)).Value = "Mittag"
Case "spät"
.Range(.Cells(25, lngSpalte), .Cells(27, lngSpalte)).Value = "Mittag"
Case "kurz früh"
.Range(.Cells(31, lngSpalte), .Cells(43, lngSpalte)).ClearContents
Case "kurz spät"
.Range(.Cells(7, lngSpalte), .Cells(18, lngSpalte)).ClearContents
Case Else
.Range(.Cells(7, lngSpalte), .Cells(43, lngSpalte)).Value = "Inbound"
End Select
Next
End With
End Sub


Vielen Dank für die Hilfe
Gruß André

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Code erweitern
27.10.2008 17:50:00
Peter
Hallo André,
so z. B.
Option Explicit

Private Sub aktualisieren_montag_Click()
Dim wks As Worksheet, lngSpalte As Long
Dim aSpalten  As Variant
Dim iIndex    As Integer
aSpalten = Array(4, 14, 18, 28, 32, 42, 46, 56, 60, 70)
Set wks = ActiveSheet
With wks
'Spalten D bis N abarbeiten
For iIndex = 0 To (UBound(aSpalten) - 1) Step 2
For lngSpalte = aSpalten(iIndex) To aSpalten(iIndex + 1)
'Eintrag in Zeile 6 der Spalten prüfen
Select Case .Cells(6, lngSpalte).Value
Case "frei", "krank", "url"
.Range(.Cells(7, lngSpalte), .Cells(43, lngSpalte)).ClearContents
Case "früh"
.Range(.Cells(21, lngSpalte), .Cells(23, lngSpalte)).Value = "Mittag"
Case "spät"
.Range(.Cells(25, lngSpalte), .Cells(27, lngSpalte)).Value = "Mittag"
Case "kurz früh"
.Range(.Cells(31, lngSpalte), .Cells(43, lngSpalte)).ClearContents
Case "kurz spät"
.Range(.Cells(7, lngSpalte), .Cells(18, lngSpalte)).ClearContents
Case Else
.Range(.Cells(7, lngSpalte), .Cells(43, lngSpalte)).Value = "Inbound"
End Select
Next lngSpalte
Next iIndex
End With
End Sub


Gruß Peter

Anzeige
Funktioniert!!
29.10.2008 17:42:37
André
Hallo Peter!
Funktioniert SUPER!!
Vielen Dank!!!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige