Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1140to1144
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
Inhaltsverzeichnis

Spalte mit VBA um eine Spalte nach rechts kopieren

Spalte mit VBA um eine Spalte nach rechts kopieren
Hagen
Hallo zusammen,
ich benötige mal eure Hilfe!
Ich möchte mit einem VBA Code den Bereich A10:A20 nach B10:B20 kopieren, bei erneutem Ablauf des Macros sollte dann der Bereich von B nach C und das nächte mal von C nach D usw Kopiert werde
Ich habe dazu aber leider keine Lösung! und hoffe einer von euch kann mir hierbei weiterhelfen!
Danke
Hagen

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
dazu brauchen wir eine Logik...
24.02.2010 12:35:31
Björn
Hallo Hagen,
ansich ist das ein relativ einfaches Problem, wir sollten nur eine Logik haben, wann welche Spalte wohin kopiert werden soll.
Beim ersten mal ist das ja noch einfach. Von A nach B. Gut.
Bei den nächsten Malen:
Irgendwie muss definert werden / herausgefunden werden, welche Spalte kopiert werden soll.
Wenn es z.B. immer die letzte Spalte ist (also weiter rechts kommt NICHTS mehr), dann wäre das eine Logik.
Falls das nicht so ist, müsstest Du eine andere Logik finden. Z.B. die Spalte, die einen bestimmten Suchbegriff enthält, oder du schreibst in irgendeine Zelle (gerne auch ausgeblendet), welche Spalte kopiert werden soll...
Gruß
Björn B.
Anzeige
AW: dazu brauchen wir eine Logik...
24.02.2010 14:07:54
Hagen
Hallo Björn,
Ja ich habe eine Logik! es sind eigentlich immer die letzten 3 Spalten, weiter rechts kommt nicht mehr:
also eigentlich A1:C10 nach B1:D10 nach C1:E10 ....
reicht das als logik? oder gibt es probleme damit das es 3Spalten sind?
Danke dir!
Gruß Hagen
AW: dazu brauchen wir eine Logik...
25.02.2010 10:13:22
Hagen
Diese Frage möchte ich nochmals als noch offen posten.
und hoffe jemand kann mir hierzu weiterhelfen.
gruß
Hagen
AW: dazu brauchen wir eine Logik...
25.02.2010 10:25:38
Björn
Hallo Hagen,
da ist wohl was schief gelaufen, hatte Dir gestern eigentlich nochmal ein paar Fragen gestellt, aber irgendwie hab ich wohl den falschen Knopf gedrückt... sorry.
Also nochmal:
Anisch sind 3 Spalten kein Problem, das ist (fast) der gleiche Befehl.
Du hast im ersten Beitrag geschrieben: A10:A20 nach B10:B20 kopieren, das nächste Mal B10:B20 nach C10:C20 kopieren.
Jetzt schreibst Du A1:C10 nach B1:D10 nach C1:E10.
Das sind andere Spalten und andere Zeilen...
Bevor ich da jetzt was zusammenbastel, bitte genau definieren, was passieren soll.
- Sind die Zeilen fix? Also immer 1-10? Oder könnte man die ganze Spalte kopieren?
- Die Spalten werden immer 1 nach rechts kopiert, könnte man da nicht einfach eine Spalte einfügen? Teste das mal manuell und prüfe das Ergebnis, ob das ok für Dich ist. Oder was soll z.B. nach kopieren von B1:D10 nach C1:E10 in Spalte B passieren? Nach Deiner Methode wäre Spalte B = Spalte C und nach Spalte einfügen wäre Spalte B leer.
- Soll wirklich kopiert werden oder doch eher verschoben?
Gruß
Björn B.
Anzeige
AW: dazu brauchen wir eine Logik...
25.02.2010 11:42:39
Hagen
Hallo Björn!
Danke für deine Hilfe!
Ja ich hatte geschrieben das ich A nach B und dann nach C Kopieren möchte, ich dachte das könnte ich dann selber in der Formel anpassen.
Aber richtig ist das ich A1:C10 nach B1:D10 nach C1:E10 kopieren möchte.
Nun zu deinen Fragen:
- Ja die Zeilen sind Fix! also 1bis10, die ganze Spalte kann nicht kopiert werden.
- in den Zeilen sind verschiedene Formeln, die sich auf eine Externe Datenbank beziehen, und pro Monat müssen die drei Spalten dann um eine Spalte nach rechts verschoben werden. Es sind 3 Spalten, da in der Spalte 1 die Actual Zahlen für den Monat, in Spalte 2 die Zahlen für den Rest des Monats, und in Spalte 3 die Zahlen der Vergangenen 12 Monate stehen.
- Und da ich die vergangenen Monate auch aufzeigen möchte, müssen die Zeilen Kopiert und nicht verschoben werden.
Ich hoffe ich das ist ausreichend. Anbei aber mal eine kleines Bsp ich hoffe dadurch wird es klarer.
https://www.herber.de/bbs/user/68244.xls
Gruß
Hagen
Anzeige
versuch mal das...
25.02.2010 12:17:03
Björn
Hallo Hagen,
bitte teste mal folgenden Code (bitte in den Code-Bereich des enstprechenden Blattes einfügen, NICHT in ein Modul!!!):
Sub Spalten_kopieren()
Dim spalte As Integer
'letzte Spalte ermitteln (in Zeile 2, da Zeile 1 nicht durchgehend befüllt)
spalte = Range("IV2").End(xlToLeft).Column
Range(Cells(1, spalte - 2), Cells(10, spalte)).Copy Cells(1, spalte - 1)
End Sub
Klappt das so, wie Du es brauchst?
Gruß
Björn B.
DANKE!
25.02.2010 14:41:40
Hagen
Hallo Björn,
Danke dir für deine Hilfe, du hast mir heute den Tag gerettet!!!
Das funktioniert alles soweit! und auch genau wie ich es brauche!
Grüße
Hagen
Anzeige

333 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige