Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA: wenn aktuelles Blatt. dann, ... sonst

VBA: wenn aktuelles Blatt. dann, ... sonst
12.11.2018 13:58:41
Erwin
Hallo Zusammen,
ich scheitere gerade an einem Problem, das für euch sicher eine Kleinigkeit in VBA ist.
Wenn das aktuelle Blatt "Montag" ist, dann lösche D4, D8 und D16, wenn der Code von einem anderen Wochentag aufgerufen wird, soll im aktuellen Blatt D6, D10 und D20 geöscht werden.
Vielen Dank schon mal.
Erwin

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: wenn aktuelles Blatt. dann, ... sonst
12.11.2018 14:12:48
Rudi
Hallo,
If ActiveSheet.Name = "Montag" Then
Range("d4,d8,d16").ClearContents
Else
Range("d6,d10,d20").ClearContents
End If

Gruß
Rudi
AW: VBA: wenn aktuelles Blatt. dann, ... sonst
12.11.2018 14:13:19
Bernd
Servus Erwin,
so in der Art?

Sub test()
If ActiveSheet.Name = "Montag" Then
With ActiveSheet
.Cells(4, 4).ClearContents
.Cells(8, 4).ClearContents
.Cells(16, 4).ClearContents
End With
Else
With ActiveSheet
.Cells(6, 4).ClearContents
.Cells(10, 4).ClearContents
.Cells(20, 4).ClearContents
End With
End If
End Sub
Grüße, Bernd
AW: VBA: wenn aktuelles Blatt. dann, ... sonst
12.11.2018 14:13:32
Werner
Hallo Erwin,
Select Case ActiveSheet.Name
Case "Montag"
Range ("D4, D8, D16"). ClearContents
Case "Dienstag", "Mittwoch", "Donnerstag", "Freitag"
Range("D6, D10, D20").ClearContents
End Select
Gruß Werner
Anzeige
AW: VBA: wenn aktuelles Blatt. dann, ... sonst
12.11.2018 14:23:09
Erwin
Hallo Zusammen
so viele gute Ansätze und alle funktionieren ;)
Klar komme ich damit zu Recht und hab's schon fix eingebaut.
Herzlichen Dank an euch.
Grüße - Erwin
Gerne u. Danke für die Rückmeldung. o.w.T.
12.11.2018 19:30:00
Werner
AW: VBA: wenn aktuelles Blatt. dann, ... sonst
12.11.2018 14:16:28
Henner
Hallo Erwin
Den Namen des aktiven Blattes kannst Du abfragen mit

ActiveSheet.Name
Wenn Du damit nicht zurecht kommst rate ich Dir Deine Level-Angabe auf VBA = Nein zu setzen.

Option Explicit
Sub Clear()
If ActiveSheet.Name = "Montag" Then
With ActiveSheet
.Range("D4").Value = ""
.Range("D8").Value = ""
.Range("D16").Value = ""
End With
Else
With ActiveSheet
.Range("D6").Value = ""
.Range("D10").Value = ""
.Range("D20").Value = ""
End With
End If
End Sub
Gruss Henner
Anzeige
wenn man das öfters braucht
12.11.2018 15:24:40
Daniel
und somit den Zeilenaufwendigen IF-Block als Einzeiler (mit Vorbereitung) haben will:
Dim Bereich(-1 To 0) As String
Bereich(-1) = "D4,D8,D16"
Bereich(0) = "D6,D10,D20"
Range(Bereich(ActiveSheet.Name = "Montag")).ClearContents
Gruß Daniel

345 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige