Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Auswahl kopieren

Forumthread: Auswahl kopieren

Auswahl kopieren
28.11.2006 15:11:44
Daniel
Hallo!
Bisher habe ich das immer mit der Maus mit Copy&Paste gemacht.
Da der schritt aber immer wieder und gehäuft vorkommt, wollte ich
das doch gerne lieber per Knopfdruck machen.
Ich markiere mehrere (kann aber auch nur 1) Zelle in Spalte A. Diese hängen nicht zusammen. Nun will ich von diesen Zeilen die Spalten A-I ins Blatt Tabelle1 übertragen. Dort in die nächste freie Zeile gemäß A.
Abschließend sollen in den kopierten Zeilen (ich meine die Quellzeilen), in Spalte G eine 0 eingetragen werden.
Hat jemand einen Tipp für mich?
Grüße,
Daniel
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Auswahl kopieren
28.11.2006 17:01:17
Yal
Erste Schritt:
Mache wie immer, aber schaltet vorher die Makro-Aufzeichnung an: Extras >> Makros >> Aufzeichen, Beenden des Aufzeichnen nicht vergessen.
dann Code anschauen (Extras >> Makros >> Visual Basic Editor, unter "Module" Modul1 dopppelklicken, und probieren zu verstehen, was da steht. Kein Angst, es ist relativ einfach.
Zweite Schritte: Code anpassen. Na gut, da wird's ein Bischen komplizierter!
Als mögliche Code:

Sub Übertragen()
Dim Zelle
For Each Zelle In Selection.Cells
Worksheets("Tabelle1").Range("A65500").End(xlUp).Offset(1, 0) = Zelle.Value
Zelle.Offset(0, 6) = 0
Next Zelle
End Sub

Es ist nur ein schnelle Entwurf, aber es kann beliebig erweitert werden.
Viel Spass
Yal
Anzeige
AW: Auswahl kopieren
28.11.2006 17:11:31
Daniel
Hallo Yal,
da wird aber nur der Wert der Spalte A übertragen. Ich will aber, dass A bis I übertragen wird in A bis I von Tabelle1.
Ich habe keine Ahnung wie ich das anpassen muss!?
Grüße,
Daniel
AW: Auswahl kopieren
28.11.2006 17:53:06
Yal
Wichtig ist vor allem, dass Du verstehst, was passiert und warum es passiert. Dann kannst Du in das Geschehen eingreifen.

Sub Übertragen()
Dim Zelle, i%
For Each Zelle In Selection.Cells
For i = 0 To 8
Worksheets("Tabelle1").Range("A65500").End(xlUp).Offset(1, i) = Zelle.Offset(0, i).Value
Next i
Zelle.Offset(0, 6) = 0
Next Zelle
End Sub

Vergleich die beide Code und schaue die Funktion Offset in der Online-Hilfe. Ohne Verstand, keine Vorsprung.
Viel Erfolg
Yal
Anzeige
AW: Auswahl kopieren
29.11.2006 08:47:47
Daniel
Hallo Yal,
also ich denke ich habe das verstanden.
Das einzige Problem das nun noch besteht ist, dass Spalte B - I immer einen tiefer steht als A.
Ich denke es liegt daran, dass hier
For i = 0 To 8
Worksheets("Tabelle1").Range("A65500").End(xlUp).Offset(1, i) = Zelle.Offset(0, i).Value
Next i
nach der letzten gefüllten gesucht wird, diese aber nach dem ersten Durchlauf eins weiter runter gerutscht ist.
Was muss nun noch geändert werden?
Danke und beste Grüße,
Daniel
Anzeige
AW: Auswahl kopieren
29.11.2006 15:05:43
Yal
Ja. Ich teste selten meine Programmierung.
Es liegt daran, dass nach dem wir die erste Wert in Tabelle1!Axx geschrieben haben, die nächste Suche nach End(xlUp) eine Zeile Tiefer kommt!
Hier ein korrigierte Version:

Sub Übertragen()
Dim Zelle, i%, Ziel%
For Each Zelle In Selection.Cells
Ziel = Worksheets("Tabelle3").Range("A65500").End(xlUp).Row + 1 'Ermittlung der Ziel-Zeile nicht mehr im For-Schleife, und daher ungeändert
For i = 0 To 8 ' A + 0 --> A, A + 8 --> I
Worksheets("Tabelle3").Cells(Ziel, i) = Zelle.Offset(0, i).Value
Next i
Zelle.Offset(0, 6) = 0 ' A + 6 --> H
Next Zelle
End Sub

Anzeige
AW: Auswahl kopieren
29.11.2006 16:21:51
Daniel
Hallo Yal,
die Zeile
Worksheets("Tabelle3").Cells(Ziel, i) = Zelle.Offset(0, i).Value
wird gelb markiert. Vorher kommt der Kommentar:
"Anwendungs-oder objektdefinierter Fehler".
Was läuft nun falsch?
danke,
Daniel
AW: Auswahl kopieren
29.11.2006 20:58:49
Yal
Dumm von mir: da ich die Zielzelle nicht mehr mit Offset definiere, sondern direkt mit
Cells(x, y)
darf natürlich x nicht null sein!
also
For i = 0 To 8
ändern in
For i = 1 To 9
Schritt für Schritt ...
Yal
Anzeige
AW: Auswahl kopieren
30.11.2006 08:16:54
Daniel
okay, danke.
Entsprechend muss es dann
Zelle.Offset(0, i - 1).Value
heißen. also statt i, i-1.
Danke,
Daniel
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige