Excel Spalte einfügen, wenn "wenn-funktion" erfüllt?
Moin,
ich habe ein "kleines" Excel Problem und hoffe, dass die Excel Profis mir dabei helfen können.
Und zwar bin ich dabei einen dynamischen Kalender in Excel zu erstellen, nun bin ich soweit fertig und will ein paar "extras" integrieren.
Zur Zeit ist die Spalte des 29.02 leer, wenn es kein Schaltjahr ist, wenn es ein Schaltjahr ist steht dort der 29.02. Nun wäre es natürlich schöner, wenn die Spalte erst eingefügt wird wenn es ein Schaltjahr ist.
Vielen Dank schonmal an alle Antworten im vor raus.
Mit freundlichen Grüßen
3 Antworten
Du könntest z.B. mit der Funktion Monatsende arbeiten und ohne Leerzellen den Kalender ab 1.3. fortführen.

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
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
Vielen vielen Dank. Super schnelle Antwort und funktioniert einwandfrei.
Das geht mit Formeln nicht. Dazu musst Du Makros verwenden. Kennst Du Dich damit aus?
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.
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.