Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Drag & Drop

Drag & Drop
15.09.2020 14:23:51
Steve
Moin Leute,
mir ist gerade eine ganz wilde Idee gekommen, aber ich hab keine Ahnung ob das funktioniert.
Ich möchte eine Datei (PDF z.B.) in einem Ordner speichern, aber direkt über EXCEL.
In manchen Websites sieht man das. Da zieht man die Datei einfach auf ein Feld und lässt die Maustaste los. Schon wir die Datei hochgeladen.
Ich habe mich gefragt, ob das auch in VBA realisierbar ist.
Also ich nehme eine Datei, ziehe die auf eine vorbereitete Stelle und schon wird diese in einem (voreingestellten) Ordner gespeichert. (perfekt wäre ausschneiden und einfügen)
Kann man sowas umsetzen? Wenn ja, was müsste ich mir dafür anschauen/aneignen?
Habe ein wenig gegoogelt aber nichts gefunden. Vielleicht habe ich auch nur falsch geschaut.
Wenn jemand eine gute Website weiß nehme ich diese auch gerne.
Ich habe übrigens keine Beispieldatei, weil ich nicht wüsste was ich da reinmachen sollte auser einen viereckigen Kasten.
Ich danke euch für eure Ideen
Liebe Grüße
Steve
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Drag & Drop
15.09.2020 15:03:17
ChrisL
Hi Steve
Im Standard von VBA Excel ist kein Drag&Drop vorgesehen. Ich will nicht ausschliessen, dass irgendwelche wilden Workarounds möglich sind, aber ich würde sowieso empfehlen im Standard zu bleiben.
Ich meine mich zu erinnern, dass VB (ohne Excel) solche Drag&Drop Ereignisse anbietet.
cu
Chris
Anzeige
AW: Drag & Drop
15.09.2020 17:54:30
Planlos
Hallo
sofern du das ActivX Listview verwenden kannst/darfst und die gezogenen Dateien aus dem explorer kommen, ginge es damit ziemlich simpel.
Listview einfügen, im Eigenschaftsfenster für dieses Control die Eigenschaft OLEDropmode auf ccOLEDropManual und im VBA-Editor das Event [DeinListView]_OLEDragDrop mit Code zum Leben erwecken, in etwa (LuftCode)
Private Sub [DeinListView]_OLEDragDrop(Data As MSComctlLib.DataObject, Effect As Long, Button  _
As Integer, Shift As Integer, x As Single, y As Single)
Dim file
If Data.GetFormat(ccCFFiles) Then
For Each file In Data.Files
FileCopy file, [DeinLW:\DeinZielPath\] & StrReverse(Split(StrReverse(file), "\")(0))   _
Next
End If
End Sub

Anzeige
AW: Drag & Drop
19.09.2020 22:52:09
Steve
Moin planlos,
Das klingt etwas komplizierter. Liegt daran, das mir dazu noch einige Kenntnisse fehlen. Aber ich werde mich, jetzt wo ich weiss das es grundsätzlich möglich ist mal einlesen und versuchen es umzusetzen. Werde dann mein Ergebnis senden. Vielleicht stolperst du da drüber und schaust es dir an. Bisher war mein code noch immer verbesserungswürdig.
Ich mache mich dann mal ans werk und fange an nachzulesen was ActiveX list view ist.
Liebe grüße aus dem norden und danke
Steve
Anzeige
AW: Drag & Drop
19.09.2020 22:52:51
Steve
Moin planlos,
Das klingt etwas komplizierter. Liegt daran, das mir dazu noch einige Kenntnisse fehlen. Aber ich werde mich, jetzt wo ich weiss das es grundsätzlich möglich ist mal einlesen und versuchen es umzusetzen. Werde dann mein Ergebnis senden. Vielleicht stolperst du da drüber und schaust es dir an. Bisher war mein code noch immer verbesserungswürdig.
Ich mache mich dann mal ans werk und fange an nachzulesen was ActiveX list view ist.
Liebe grüße aus dem norden und danke
Steve
Anzeige
AW: Drag & Drop
21.09.2020 13:07:04
Steve
Moin planlos,
Das klingt etwas komplizierter. Liegt daran, das mir dazu noch einige Kenntnisse fehlen. Aber ich werde mich, jetzt wo ich weiss das es grundsätzlich möglich ist mal einlesen und versuchen es umzusetzen. Werde dann mein Ergebnis senden. Vielleicht stolperst du da drüber und schaust es dir an. Bisher war mein code noch immer verbesserungswürdig.
Ich mache mich dann mal ans werk und fange an nachzulesen was ActiveX list view ist.
Liebe grüße aus dem norden und danke
Steve
Anzeige
AW: Drag & Drop
23.09.2020 12:48:22
Steve
Moin planlos,
Das klingt etwas komplizierter. Liegt daran, das mir dazu noch einige Kenntnisse fehlen. Aber ich werde mich, jetzt wo ich weiss das es grundsätzlich möglich ist mal einlesen und versuchen es umzusetzen. Werde dann mein Ergebnis senden. Vielleicht stolperst du da drüber und schaust es dir an. Bisher war mein code noch immer verbesserungswürdig.
Ich mache mich dann mal ans werk und fange an nachzulesen was ActiveX list view ist.
Liebe grüße aus dem norden und danke
Steve
Anzeige
AW: Drag & Drop
16.09.2020 14:58:48
https://www.technikhiwi.de/eingabestift-test/
Mich würde dies auch interessieren. Ich bin Designerin und möchte für meine Firma handgemalte Logos katalogisieren und würde das über diesen Weg machen wollen.
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Drag & Drop in Excel VBA


Schritt-für-Schritt-Anleitung

Um ein Drag & Drop Feature in Excel mit VBA zu implementieren, kannst du folgende Schritte befolgen:

  1. ActiveX-Steuerelement hinzufügen: Öffne deine Excel-Arbeitsmappe, gehe zum Ribbon "Entwicklertools" und füge ein ActiveX ListView-Steuerelement hinzu. Dies ist notwendig, um die Drag & Drop Funktion zu realisieren.

  2. OLEDropMode einstellen: Klicke mit der rechten Maustaste auf das ListView-Steuerelement und wähle "Eigenschaften". Setze die Eigenschaft OLEDropMode auf ccOLEDropManual.

  3. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  4. Code für Drag & Drop hinzufügen: Füge folgenden Code in das entsprechende ListView-Objekt ein:

    Private Sub [DeinListView]_OLEDragDrop(Data As MSComctlLib.DataObject, Effect As Long, Button As Integer, Shift As Integer, x As Single, y As Single)
       Dim file
       If Data.GetFormat(ccCFFiles) Then
           For Each file In Data.Files
               FileCopy file, [DeinLW:\DeinZielPath\] & StrReverse(Split(StrReverse(file), "\")(0))
           Next
       End If
    End Sub

    Stelle sicher, dass du [DeinListView] und [DeinLW:\DeinZielPath\] durch deine eigenen Werte ersetzt.

  5. Testen: Speichere deine Änderungen und teste die Drag & Drop Funktion, indem du eine Datei (z.B. eine PDF) auf das ListView ziehst.


Häufige Fehler und Lösungen

  • Excel Drag & Drop funktioniert nicht: Stelle sicher, dass das ListView korrekt konfiguriert ist und dass die OLEDropMode-Eigenschaft richtig gesetzt wurde.

  • Fehler beim Zugriff auf MSComctlLib: Wenn du die Bibliothek nicht nutzen kannst, stelle sicher, dass du die Microsoft Common Controls-Bibliothek in deinen Referenzen aktiviert hast.

  • Dateien werden nicht kopiert: Überprüfe den Zielpfad, ob dieser korrekt ist und ob du die notwendigen Berechtigungen hast.


Alternative Methoden

Wenn du keine ActiveX-Steuerelemente verwenden möchtest, kannst du auch die Drag and Drop Methode über UserForms umsetzen. Hierbei kannst du ein Textfeld oder ein Bild verwenden, um den Drag & Drop Vorgang zu realisieren.


Praktische Beispiele

Ein praktisches Beispiel für die Anwendung des Drag & Drop in Excel wäre das Einfügen von PDF-Dateien in eine Excel-Tabelle. Hierbei kannst du das Drag & Drop VBA nutzen, um die PDFs direkt aus dem Explorer in eine bestimmte Zelle der Excel-Tabelle zu ziehen.


Tipps für Profis

  • Verwende OLEDragDrop Events: Diese Events bieten zusätzliche Flexibilität und Kontrolle über den Drag & Drop Vorgang.
  • Füge Fehlerbehandlungen hinzu: Implementiere Error Handling in deinem VBA-Code, um unerwartete Probleme während des Drag & Drop Vorgangs zu vermeiden.
  • Teste regelmäßig: Überprüfe deine Implementierung regelmäßig, um sicherzustellen, dass alles wie gewünscht funktioniert.

FAQ: Häufige Fragen

1. Kann ich Drag & Drop für andere Dateiformate verwenden?
Ja, du kannst Drag & Drop für verschiedene Dateiformate verwenden, solange du den Code entsprechend anpasst.

2. Ist es möglich, Drag & Drop ohne ActiveX-Steuerelemente zu verwenden?
Ja, du kannst auch Drag & Drop in VBA UserForms implementieren, jedoch ist es einfacher, ActiveX-Steuerelemente zu verwenden.

3. Wo finde ich mehr Informationen zu Drag & Drop in VBA?
Du kannst in Online-Foren, wie zum Beispiel Stack Overflow oder spezifischen VBA-Communities, nach Tutorials und Beispielen suchen.

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