Hallo liebe Helfer,
Hallo Haller,
ich bräuchte eure hilfe, ich muss ein Makro erstellen und
dieses dann quasi im excel bzw. im breich VBA umschreiben.
Wie wir weiter unten sehen, hast Du ein Makro aufgezeichnet, dass, sofern Du ihm nichts anderes beibringst immer genau das gleiche tut: auf Tabelle 2 in Zeile 1 schreiben (und ggf. überschreiben).
Ich muss in Tabelle 1 in der Zeile 1 Spalte A-F
A B C D E F
1 Haller Manu 12.01.200 Stuttgart BW DE
Wenn Du Daten von Tabelle 1 nach Tabelle 2 kopierst, könnte man fragen, warum Du nicht gleich Tabelle 1 verwendest. Zur Lösung Deines Problems (bedingt kopieren) treffe ich also Annahmen. Wenn die nicht korrekt sind, lass es mich wissen.
- Annahme: Du kopierst immer 6 Spalten, immer A bis F, die Zeile kann sich ändern und soll durch die Position der selektierten Zelle (auf Tabelle 1) gegeben sein.
eintragen nun mache ich ein Makro und tue es zuweisen:
Dieses Makor muss die Daten aus Zeile 1 A-F in den neuen
Reiter bzw. Tabelle 2
in die erste Zeile Einfügen. Dieses klappt und habe ich
geschafft…
wenn ich nun aber einen neuen Z.b. freund eingeben und wieder
aufs gleiche Makro klicke überschreibt er natürlich meine
Daten, er sollte aber diese 'Daten in Tabelle 2 Zeile 2 A-F
notieren. Als ergebnis soll ich dann in Zeile 1 stehen und
jeder weitere Datensatz soll unter mir eingefügt werden.
- Annahme: Dein Problem ist: Finde die erste freie Zeile in Tabelle 2.
Ich schaffe dies nicht, er tut mir immer meinen Datensatz
überschreiben.
Wie kann ich das Makro bzw. den Code so umschreiben das er
dann immer automatisch die nächste Zelle mit den Daten füllt?
So sieht das Makro momentan aus
Sorry, aber das habe ich hier überschrieben:
Option Explicit
Sub Kopiere_T1T2()
'kopiert selektierte Zeile nach Tabelle 2
Dim Z1 As Long, Z2 As Long
Dim Eintrag As String
’
Z1 = ActiveCell.Row 'ermittle Zeile
Range(Cells(Z1, 1), Cells(Z1, 6)).Select 'Spalte A bis F wählen
Selection.Copy 'und kopieren
Sheets(„Tabelle2“).Select 'Tabelle zwei wählen
Z2 = 1 'Zeile 1 als Start
Eintrag = Cells(Z2, 1).Value 'prüfen ob Zelle leer ist
Do Until Eintrag = „“ 'Zeilen hochzählen bis Zelle leer
Z2 = Z2 + 1 'nächste Zeile
Eintrag = Cells(Z2, 1).Value
Loop 'Ende der Schleife
Cells(Z2, 1).Select 'Wählen
ActiveSheet.Paste 'und Einfügen
’
End Sub
Ich danke im Voraus lg
Haller
MfG MwieMichel