Hallo liebe Excel-Gurus,
ich brauche mal wieder kurz eure Hilfe und zwar möchte ich folgendes:
Wenn Zelle J2= "juli" dann Spalte K, M, O, Q, S und U hinzufügen.
Wenn Zelle J2= "august" dann Spalte M, O, Q, S und U hinzufügen.
Insofern möglich sollten diese hinzugefügten Spalten jeweils in Zeile 5 den Text "TEXT" stehen haben.
Kann mir hier jemand helfen?
Vielen Dank!!
Moin!
Erst einmal: Nö!
Zitat:Wenn Zelle J2= "juli" dann Spalte K, M, O, Q, S und U hinzufügen.
Wenn Zelle J2= "august" dann Spalte M, O, Q, S und U hinzufügen.
Die Spalten sind/waren bereits vorhanden.
Außerdem erschließt sich mir die Logik nicht wirklich …
Gruß Ralf
Hallo Ralf,
sorry, ich glaube ich habe mich bei meiner Erklärung nicht so ganz klar ausgedrückt.
Also die genannten Spalten sind bereits vorhanden, in der Tat, und sie sind auch befüllt. Jedoch hätte ich gerne, dass zwischen der befüllten Spalte J und K eine neue leere Spalte eingefügt wird.
Und in dieser leeren Spalte sollte dann in Zeile 5 der Text "TEXT" stehen.
Hoffe so ist es deutlicher.
Hallo,
in ein allgemeines Codemodul folgende Makros kopieren:
Code:
Sub TestJ2undEinfügen()
If Range("J2").Value = "juli" Then
EinfSpaltenListe "U", "S", "Q", "O", "M", "K"
ElseIf Range("J2").Value = "august" Then
EinfSpaltenListe "U", "S", "Q", "O", "M"
End If
End Sub
Sub EinfSpaltenListe(ParamArray SpL() As Variant)
Dim Sp As Variant
For Each Sp In SpL
Call EinfügenSpalte(Sp)
Next Sp
End Sub
Sub EinfügenSpalte(Sp As Variant)
With Columns(Sp)
.Insert shift:=xlToRight, Copyorigin:=xlFormatFromLeftOrAbove
.Cells(5).Offset(0, -1).Value = "TEXT"
End With
End Sub
Sie können zB. über die Tastenkombination Alt+F8 aufgerufen wurden und zwar als Makro "
TestJ2undEinfügen".