Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1328to1332
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

Kopieren

Kopieren
11.09.2013 19:29:10
Gunni
Hallo Excel Profis,
ich habe da mal ein für mich unlösbares Problem,
Ich möchte in dem Blatt "Export" die Überschriften mit den Überschriften im Blatt "Daten" vergleichen und bei Übereinstimmung sollen die Werte darunter von "Export" nach "Daten" Kopiert werden.(selbe Arbeitsmappe)
Ich möchte zudem noch auswählen können in was für einer Zeile gesucht wird (in "Export" und "Daten") und in was für einer Zeile die Werte dann eingetragen werden.
z.B. suche die Überschriften in dem Blatt "Export" in der Zeile 2, alle Spalten und vergleiche sie mit den Überschriften im Blatt "Daten" in der Zeile 5 und kopiere dann die Werte unter den Überschriften im Blatt "Daten" ein und zwar ab der Zeile 9.
Es können auch Leerzeilen oder Leerspalten dazwischen sein
hier die Datei
https://www.herber.de/bbs/user/87259.xlsx
Gruß Gunni
Danke schon mal im Voraus

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Bitte schön!
12.09.2013 12:51:07
Marc
Mahlzeit!
Da hast du mich fast drangekriegt, mit den Überschriften! Einfach in die einzige Spalte mit Daten eine Überschrift mit Leerzeichen einzufügen! ("Test 3 " statt "Test 3")
Aber ich hab´s trotzdem geschafft, hier das Ergebnis:
https://www.herber.de/bbs/user/87268.xlsm
Gruß, MCO

AW: Bitte schön!
12.09.2013 14:47:54
Gunni
Hallo Marc (MCO),
das war nicht meine Absicht mit dem Leerzeichen, sorry.
Zuerst mal vielen Dank, das passt fast perfekt, jetzt hätte ich noch ein "kleines" problemchen, oder besser gesagt noch einen Wunsch.
-Die Daten in der Zieldatei sollten vorher gelöscht werden, wenn sich die Überschriftenanordnung (also z.B. von Zeile 5 auf Zeile 3 oder von von Spalta B auf Spalte F) ändert bleiben die Werte stehen und dann stimmt die Zuordnung nicht mehr.
-Jetzt möchte ich noch von Export nach Daten Kopieren, also andersrum, wo kann ich das Ändern, kann ich das irgendwie bestimmen, das zu kopierende Blatt und das Zielblatt? es gibt in meiner Datei noch zusätzliche Blätter in der Arbeitsmappe.
-Und zuletzt, wenn mehrere Überschriften in der Zieldatei fehlen bringt er die erste die er nicht findet als Fehlermeldung, die restlichen ignoriert er, steht die Überschrift doppelt drin, wird nur die erste erkannt und befüllt, es kommt keine Fehlermeldung.
Ich wusste es wird kompliziert, vielleicht schaffst du das ja auch noch, aber ich bin jetzt schon Glücklich ;-) wie schon gesagt, fast perfekt.
Gruß Gunni

Anzeige
Erledigt, aber
13.09.2013 07:33:55
Marc
das geht dann auch schon über das hinaus, was du im Anfang beschrieben hast.
- Ich hab dir eine Eingabemaske gebaut (mit Auswahl von Quell u. Zielreiter)
- Daten werden kollektiv vorher gelöscht
- Ziel-Überschriften bestimmen welche Daten gezogen werden (vorher von Quelldaten ausgehend)
Schau mal, wie du damit klarkommst.
https://www.herber.de/bbs/user/87274.xlsm
Gruß, MCO

AW: Erledigt, aber
13.09.2013 09:12:59
Gunni
Hallo Marco,
wenn du mein Grinsen sehen könntest ;-)
aber 3 Dinge habe ich noch, wenn ich das Makro speichere und in eine anderen Datei einfüge bringt er mir immer Laufzeitfehler 424 und Objekt erforderlich! was mache ich falsch?
und wenn ich jetzt z.B. als Überschrift "Test 333" habe (Quelle)und in der Zieldatei habe ich in der Überschrift "Test 333", "Test 33", und "Test 3" dann füllt er mir alle 3 Felder aus?
Und er fügt mir die Überschriften aus der Quelldatei mit ein
Gruß Gunni

Anzeige
3 Punkte Plus...
13.09.2013 12:03:58
Marc
Hi!
Punkt 1
Wahrscheinlich hast du nur das Makro kopiert und nicht die Maske. Suche im Project Explorer nach UserForm1. Ich selbst hab nur Office 2003 und die Datei ist konvertiert nach xlsm. Ich glaube aber nicht, dass dort eine Inkompatibilität (was für ein Wort) vorliegt.
Punkt 2
Ändere
Set gef = .Rows(Ü_1_zeile).Find(what:=cl)
in
Set gef = .Rows(Ü_1_zeile).Find(what:=cl, lookat:=xlWhole)
(Ist aber auch im Upload enthalten)
Punkt 3
Den Fehler mit den Überschriften konnte ich nicht nachvollziehen, weder in die eine, noch in die andere Richtung.
Außerdem hab ich dir den Aufruf der Maske als letzten Punkt mit ins Kontextmenü (rechte Maustaste) eingefügt. Dieses Teil des Makros findest du in "Diese Arbeitsmappe"
Ebenfalls anders ist der Abschluss. Jetzt bekommst du nur noch eine Meldung mit den nicht gefundenen Überschriften und in welchem Blatt, welcher Zeile gesucht wurde.
Du wird begeistert sein.
https://www.herber.de/bbs/user/87280.xlsm
Gruß, MCO

Anzeige
AW: 3 Punkte Plus...
13.09.2013 14:02:33
Gunni
Hi Marco
das Grinsen wird immer breiter ;-)))
Aber leider bin ich zu d... um ein Makro zu kopieren um es in eine anderen Datei zu verwenden.
Vielleicht kannst du mir da nochmal weiterhelfen.
Das mit den Überschriften habe ich jetzt herausgefunden wann das passiert, wenn du in der Quelldatei gar keine Werte drin stehen hast kommt in der Zieldatei die Überschrift von der Quelldatei
Gruß Gunni

AW: 3 Punkte Plus...
16.09.2013 06:56:43
Gunni
Hi Marc,
also kopieren vom Makro funktioniert schon, nur das mit der rechten Maustaste geht nicht, was muß ich den da tun?
Und wo im Makro wird den zuerst die Zieldatei gelöscht, ich möchte nämlich nicht alle Spalten löschen, nur von Spalte L bis Spalte ET
Gruß Gunni

Anzeige
AW: 3 Punkte Plus...
16.09.2013 07:40:25
Marc
Moin!
Beim Start der Tabelle soll ein Makro ausgeführt werden. Das mußt du in "Diese Arbeitsmappe" kopieren"
Private Sub Workbook_Open()
Set symb = Application.CommandBars("Cell")
Set oBtn = symb.Controls.Add
With oBtn
.Caption = "Kopier-Maske aufrufen"       ' Beschriftung
.OnAction = "start"      ' Aktion
.FaceId = 1977
End With
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.CommandBars("Cell").Reset
End Sub
Damit wird ein Eintrag im Kontextmenü erzeugt. (letzter Eintrag beim Drücken der re. Maus)
Der Datenberei wird hiermit gelöscht:
Sheets(Sh_Z).Rows(Ü_2_zeile + 1 & ":" & Rows.Count).ClearContents
Die Angaben sind die Variablen, die als Zahlen aus der Maske mitgenommen werden.
Die leeren Spalten werden jetzt vorher geprüft.
https://www.herber.de/bbs/user/87310.xlsm
Gruß, MCO

Anzeige
AW: 3 Punkte Plus...
16.09.2013 12:18:23
Gunni
Hi Marc,
;-)))))))))))))))))) PERFEKT !
Jetzt geht alles so wie ich mir das vorstelle.
Vielen Dank für das Makro.
Gruß Gunni

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige