2.6k Aufrufe
Gefragt in Tabellenkalkulation von
Mahlzeit,

Jungs, Mädels, meine Birne raucht seit gestern.

Ich habe quasi die Aufgabe eine Reisekostenabrechnung zu
erstellen..
Ich habe dazu 4 Tabellenblätter:
1. Formular
2. Max Musterman
3. Hans Müller
4. Gerhard Bauer
(Erfundene Namen)

ich habe keine richtige Tabelle gebaut sondern ich habe es optisch
wie ein Formular aussehen lassen, quasi der Erste Block besteht
aus Angaben zur Person mit Dropdownmenüs usw.. Der Zweite
Block besteht aus der Berechnung der angefallenen Kosten. Nun
möchte ich das eben die eingegebenen Daten in ein anderes
Tabellenblatt kopiert werden, dass ganze per Knopfdruck (Taste
"Übernehmen" befindet sich mit auf dem Formularblatt). Damit das
ganze sortiert geschiet soll der Nachname abgefragt werden, steht
da Mustermann drinne, dann soll es eben in die Tabelle
Mustermann, steht dort Müller eben in dessen Tabelle etc...
Wenn dann das Formular per Knopfdruck leere und neue Daten
eingebe soll das selbe wieder gemacht werden. Wenn eine Person
2 mal erscheint soll quasi in dessen Tabelle eine neue Zeile
eingefügt werden mit den neuen Daten. Es soll auf keinen Fall der
vorhergehende Datensatz überschrieben werden.

Ich bekomme das einfach nicht hin... -.-
Bisher funktioniert nur das Kopieren in eine Tabelle.

- Abfrage welcher Name eingegeben ist, bzw. wohin er es anhand
des Namens kopieren soll.

- Er kopiert den Datensatz untereinander anstatt nebeneinander wie
es in einer Tabelle eigentlich sein soll

- Er fügt keine neue Zeile ein sondern ersetzt den alten Datensatz.

Zur Veranschaulichung wie weit mein Makro ist, kopiere ich ihn
euch:

Sub KopiereBereich()
Dim Quelltab As Worksheet
Dim Zieltab As Worksheet
Dim Zelle As Range
Dim Zaehler As Long
Zaehler = 1
Bereich =
"F4,F6,F8,F10,F12,F14,F16,F18,F20,F22,F24,H34,H44,H48,H53,H58
"
Set Quelltab = ActiveWorkbook.Worksheets("Formular")
Set Zieltab = ActiveWorkbook.Worksheets("Corina Knapp")
For Each Zelle In
Quelltab.Range("F4,F6,F8,F10,F12,F14,F16,F18,F20,F22,F24,H34,H
44,H48,H53,H58")
Zieltab.Cells(Zaehler, 2) = Zelle
Zaehler = Zaehler + 1
Next Zelle
End Sub

6 Antworten

0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo,

Eine Beispielmappe wäre sehr hilfreich.

Ist über diese Adresse möglich.

Gruß
Rainer
0 Punkte
Beantwortet von
Jop bekommt ihr natürlich:

http://www.file-upload.net/download-
4103426/Reisekostenabrechnung.xls.html

Ich hoffe wir kriegen das irgendwie hin -.-
Das Beschriebene Makro liegt in Formular
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo,

habe Dir ein neues Makro eingebaut, du findest es im Modul2.

Download

Gruß
Rainer
0 Punkte
Beantwortet von
VIELEN DANK!

Man alles funktioniert!

Super echt!

Viele Grüße und ein schönes Wochenende
0 Punkte
Beantwortet von
Jetzt muss ich aber mal noch was fragen...

Wo ist eigentlich die Abfrage nach dem Namen bzw. dann wo er es rein
kopieren soll? ich kann das in dem Code nicht erkennen...

Wäre super wenn du mir das beantwortest,.. nur zum Verständnis
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo,

strZiel = ws1.Range("F8").Value & " " & ws1.Range("F10").Value

...hiermit wird Vorname und Name verkettet. Beides ergibt den Arbeitsblattnamen, der hiermit...
Set ws2 = Worksheets(strZiel)
...gesetzt wird.
Eine gesondert Abfrage ist nicht erforderlich.

Gruß
Rainer
...