Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
760to764
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
760to764
760to764
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Spalten einfügen

Spalten einfügen
04.05.2006 17:07:19
udo
Hallo !
Irgendwie läßt mir die Sache mit den Spalten einfügen keine Ruhe.
Wenn ich 2 Datenblätter habe und von Datenblatt 1 nach Datenblatt 2, eine Spalte mit Daten ausschneide und in DB 2 in Spalte 1 einfüge und dies durch ein Makro ausführen lasse, gibt es dann keine Möglichkeit, sagen wir nach 2 Tagen wieder eine Spalte von einem Datenblatt auszuschneiden und diese wiederum in Datenblatt 2 einzufügen, nur diesmal nicht in Spalte 1 , ( weil sonst werden die alten Daten ja überschrieben, was ich nicht will ) sondern in Spalte 2 einfügen?.
Muss doch gehen, so zu programmieren, daß nur Daten in Spalten eingefügt werden, die leer sind ?
oder lieg ich da falsch?
LG Udo

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten einfügen
04.05.2006 18:45:53
Arthur
Dem Manne kann geholfen werden.

Private Sub CommandButton1_Click()
'Sheets("Tabelle1").Activate
Sheets("Tabelle1").Columns("A:A").Copy
Sheets("Tabelle2").Activate
Sheets("Tabelle2").Columns(Sheets("Tabelle2").UsedRange.Column + UBound(Sheets("Tabelle2").UsedRange.Value, 2)).Select
Selection.Insert Shift:=xlToRight
End Sub

So sollte es klappen.
Gruß
-Arthur
AW: Spalten einfügen
04.05.2006 21:25:25
udo
Hi Arthur,
vielen Dank für Deine Hilfe. Jedoch krieg ich das nicht gebacken. Tabelle1 heißt bei mir db12.csv, die Datei wo immer die Spalten reinkopiert werden sollen heißt "28.xls"
Tabelle1 hab ich ersetzt mit db12.csv und Tabelle2 mit 28.xls. Hab dies in ein Makro kopiert und dann findet der db12.csv nicht. Oder muss ich die Befehlszeilen gar nicht in ein Makro kopieren?
LG Udo
Anzeige
AW: Spalten einfügen
05.05.2006 10:46:15
IngGi
Hallo Udo,
folgendes Makro kopiert Spalte A deiner csv-Datei in die erste freie Spalte der Datei 28.xls. Voraussetzung ist, dass in allen belegten Spalten in Zeile 1 etwas drinsteht:

Sub Spalte_kopieren()
Workbooks("db12.csv").Sheets(1).Range("A1").EntireColumn.Copy
With Workbooks("28.xls").Sheets(1)
If .Range("A1") = "" Then
.Range("A1").PasteSpecial Paste:=xlPasteAll
Else
.Range("IV1").End(xlToLeft).Offset(0, 1).EntireColumn.PasteSpecial Paste:=xlPasteAll
End If
End With
End Sub
Gruß Ingolf
AW: Spalten einfügen
05.05.2006 14:45:27
udo
Hi Ingolf,
dankeschön für den Code. Der soll nicht Spalte a1 kopieren, sondern Spalte a62, hab ich also geändert, trotzdem kopiert der Spalte a1, ich krieg noch die Krise.

Sub Spalte_kopieren()
Workbooks("db1.csv").Sheets(1).Range("A62").EntireColumn.Copy
With Workbooks("28.xls").Sheets(1)
If .Range("A1") = "" Then
.Range("A1").PasteSpecial Paste:=xlPasteAll
Else
.Range("IV1").End(xlToLeft).Offset(0, 1).EntireColumn.PasteSpecial Paste:=xlPasteAll
End If
End With
End Sub

Anzeige
AW: Spalten einfügen
05.05.2006 14:59:49
IngGi
Hallo Udo,
du willst also Spalte A ab Zeile 62 kopieren? Dann so:

Sub Spalte_kopieren()
Workbooks("db1.csv").Sheets(1).Range("A62:A65536").Copy
With Workbooks("28.xls").Sheets(1)
If .Range("A62") = "" Then
.Range("A62").PasteSpecial Paste:=xlPasteAll
Else
.Range("IV62").End(xlToLeft).Offset(0, 1).PasteSpecial Paste:=xlPasteAll
End If
End With
End Sub
Gruß Ingolf
AW: Spalten einfügen
05.05.2006 15:11:15
udo
Hi Ingolf,
nein .. nur die Spalte 62. Habs versucht zu ändern, natürlich klappts nicht LOL
LG Udo
AW: Spalten einfügen
05.05.2006 22:45:42
IngGi
Hallo Udo,
"A62" ist nicht etwa die 62. Spalte, sondern die Zelle in der ersten Spalte, 62te Zeile. Du musst mein erstes Makro also folgendermaßen modifizieren:

Sub Spalte_kopieren()
Workbooks("db1.csv").Sheets(1).Cells(1,62).EntireColumn.Copy
With Workbooks("28.xls").Sheets(1)
If .Range("A1") = "" Then
.Range("A1").PasteSpecial Paste:=xlPasteAll
Else
.Range("IV1").End(xlToLeft).Offset(0, 1).EntireColumn.PasteSpecial Paste:=xlPasteAll
End If
End With
End Sub
Gruss Ingolf
Anzeige
AW: Spalten einfügen
06.05.2006 14:26:50
udo
Hi Ingolf,
vielen Dank, jetzt klappts prima. Ich hab insgesamt 33 Datenblätter, leg mir jetzt einfach 33 Makros an.
Schönes WE
Udo

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige