Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA: Spalte einfügen wenn Zelle =
#1
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!!
Antworten Top
#2
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
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#3
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.
Antworten Top
#4
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".
Mit lieben Grüßen
Anton.

Windows 10 64bit
Office365 32bit
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste