Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
956to960
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
956to960
956to960
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Drag and Drop von Tabellenblättern

Drag and Drop von Tabellenblättern
05.03.2008 18:06:06
Tabellenblättern
Hallo Ihr Profis,
ich bräuchte mal wieder dringend eure Hilfe.
Folgendes Problem:
Ich habe eine automatisch generierte Arbeitsmappe mit drei Tabellenblättern, von denen jedes zu verarbeitende Daten enthält.
Gleichzeitig nutze ich eine Arbeitsmappe in der neben der Verarbeitung der oben genannten Tabellenblätter auch andere Vorgänge abgehandelt werden. Dies ist also so zu sagen meine "Master-Exceldatei".
Zur Benutzerfreundlichkeit würde ich gerne die automatisch generierten Tabellenblätter der einen Arbeitsmappe zur Weiterverarbeitung per Drag & Drop entweder auf ein Feld in der "Master-Exceldatei" ziehen, das dann ein Makro mit der Verarbeitung des Inhaltes des Tabellenblattes startet oder auf ein selbst erstelltes Symbol in der Symbolleiste ziehen, was den gleichen Effekt haben soll (hierzu müsste ich noch wissen, wie man Excel sagen kann, dass dieses Symbol standardmäßig geladen wird.
Eine alternative Idee wäre, dass man in der "Master-Exceldatei" auf einen Button drückt, durch den dann die Daten aus der offenen Arbeitsmappe (die immer den gleichen Namen hat) mit den automatisch generierten Daten sammelt und verarbeitet.
Habt Ihr dazu generell Ideen und wisst, wie der Code hierzu auszusehen hat?
Vielen Dank schon mal im Vorraus.
Gruß, Tobias

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Drag and Drop von Tabellenblättern
06.03.2008 12:05:00
Tabellenblättern
Hallo Tobias,
von deinen beiden Alternativen würde ich dir die letzte (auf Buttondruck Daten sammeln) empfehlen. Optimalerweise sollte die Masterdatei die Datendatei selbst öffnen, geht aber auch so. Ohne genauere Angaben kann ich dir natürlich keine konkreten Codebeispiele geben, sollte bei deinem angegebenen Level aber für dich kein Problem sein, das selbst raus zu bekommen.
Das Auslesen der Daten könnte über Variablen zu Weiterverarbeitung z.B. so:
Dim Var As ...
Var = Workbooks("Datenfile").Worksheets("Tabelle1").Cells(1, 2).Value
oder über direkte Zuweisung in eine Zelle des Masterfiles so:
Workbooks("Masterfile").Worksheets("Tabelle10").Cells(1, 2).Value = Workbooks("Datenfile").Worksheets("Tabelle1").Cells(1, 2).Value
erfolgen. Wenn du viele Daten aus dem Datenfile z.B. für Formeln im Masterfile benötigst, kannst du ja auch das entsprechende Tabellenblatt oder großflächig die Daten des Blattes aus dem Datenfile ins Masterfile etwa mit
Workbooks("Datenfile").Worksheets("Tabelle1").Range("A2:D12500").Copy kopieren und dann einfügen.
HTH
Lutz

Anzeige
AW: Drag and Drop von Tabellenblättern
06.03.2008 22:43:51
Tabellenblättern
Hallo Lutz,
vielen Dank für die ausführliche Antwort. Du hast recht das wird wohl die beste Lösung sein. Hättest Du dennoch eine Idee, wie man in Excel einen Button in der Symbolleiste erstellen könnte, der ein Makro ausführt und der immer in der Leiste angezeigt wird?
Das Workbook aus dem die Daten gesammelt werden muss zu der von Dir genannten Methode natürlich offen sein, oder. Mit was für einem Befehl kann ich denn erfagen, ob ein Workbook mir einem bestimmten Namen geöffnet ist?
Gruß,
Tobias

AW: Drag and Drop von Tabellenblättern
07.03.2008 10:58:19
Tabellenblättern
Hallo Tobias,
wenn du dieses Symbol immer in Excel angezeigt haben willst, kannst du es manuell über Ansicht-Symbolleisten-Anpassen einstellen. In dem sich öffnenden Fenster gehst du auf Befehle und dort in Kategorie "Makros", da kannst du dir das Symbol direkt in die Symbolleiste ziehen und entsprechend konfigurieren. Die Menüführung etc. war jetzt aber komplett aus XL2k, wie es in 2007 ist, kann ich dir leider nicht sagen.
Die programmiertechnische Änderung von Symbolleisten habe ich schon jahrelang nicht mehr gemacht, da müsste ich mich erst wieder einarbeiten. Allerdings liefern dir Suchmaschinen hierzu brauchbare Ergebnisse.
Ob eine XL-Datei geöffnet ist, kriegst du z.B. so raus:
Dim Mldg
On Error Resume Next
Err.Clear
Debug.Print Workbooks("D:\Test.xls").Worksheets.Count
If Err.Number 0 Then
Mldg = "Fehler # " & Str(Err.Number) & " wurde ausgelöst von " _
& Err.Source & Chr(13) & Err.Description
MsgBox Mldg, , "Fehler", Err.HelpFile, Err.HelpContext
End If
Ich habe hier nur mal die Arbeitsblätter zählen und im Direktbereich anzeigen (Debug.Print) lassen, da kannst du natürlich deine eigenen Anweisungen reinpacken. Optimalerweise solltest du das Workbook aber im Makrocode erst selbst öffnen (z.B. mit Workbooks.Open "D\Test.xls").
HTH
Lutz

Anzeige
AW: Drag and Drop von Tabellenblättern
07.03.2008 13:47:04
Tabellenblättern
Hallo Lutz,
vielen, vielen Dank für die Hilfe! Dann werde ich mich gleich mal and die Arbeit machen.
Gruß,
Tobias

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige