Excel Spalte einfügen, wenn "wenn-funktion" erfüllt?

3 Antworten

Du könntest z.B. mit der Funktion Monatsende arbeiten und ohne Leerzellen den Kalender ab 1.3. fortführen.

Bild zum Beitrag

 - (Computer, Microsoft Excel, Formel)

Mit EntireColumn.Insert fügst du eine Spalte ein. Für die Abfrage, ob ein Jahr ein Schaltjahr ist, reicht eine kleine Funktion.

Sub optimierer()
   Dim jahr As Integer
   jahr = Range("Jahr").Value
   If IsSchaltjahr(jahr) Then _
      ActiveCell.Offset(0, 1).EntireColumn.Insert
End Sub

Function IsSchaltjahr(jahr As Integer)
   IsSchaltjahr = jahr Mod 4 = 0 And (jahr Mod 100 <> 0 Or jahr Mod 400 = 0)
End Function
Akelie 
Fragesteller
 12.01.2022, 11:39

Das sieht schonmal vielversprechend aus, wo in dem Code kann ich denn einfügen wo die Spalte eingefügt werden soll. In meinem Beispiel wäre das zwischen Spalte BH und Bi.

0
Suboptimierer  12.01.2022, 11:42
@Akelie

Anstelle von ActiveCell kannst du den Ort beliebig wählen, an dem die Spalte eingefügt werden soll. In deinem Beispiel Range("BI1").EntireColumn.Insert

1
Akelie 
Fragesteller
 12.01.2022, 11:46
@Suboptimierer

Vielen vielen Dank. Super schnelle Antwort und funktioniert einwandfrei.

1

Das geht mit Formeln nicht. Dazu musst Du Makros verwenden. Kennst Du Dich damit aus?

Akelie 
Fragesteller
 12.01.2022, 10:59

Ja, habe bereits Makros eingefügt. Jedoch habe ich nichts im Internet gefunden wie man eine Spalte über einen Makro einfügt. Bin auch kein Experte in Makros.

0