Anzeige
Archiv - Navigation
732to736
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
732to736
732to736
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Listboxinhalt in Zwischenablage

Listboxinhalt in Zwischenablage
21.02.2006 10:40:56
Holger
Hallo zusammen,
gibt es eine Möglichkeit aus einer Listbox, welche zwei Spalten hat, den Inhalt der ersten Spalte in die Zwischenablage zu kopieren?
Möchte Sie nicht erst auf Excelsheet schreiben und dann kopieren, sondern direkt aus der Listbox in die Zwischenablage! Wie geht das?
Möchte die Daten danach dann in eine Spalte in SAP kopieren, mit Strg+V.
Vielen dank im vorraus
MfG
Holger Wächter

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

Betreff
Datum
Anwender
Anzeige
AW: Listboxinhalt in Zwischenablage
21.02.2006 12:33:12
Nepumuk
Hallo Holger,
null Problemo:
Private Sub CommandButton1_Click()
    Dim strArray() As String, strText As String
    Dim lngIndex As Long
    Dim objClipboard As DataObject
    Set objClipboard = New DataObject
    With ListBox1
        Redim strArray(1 To .ListCount)
        For lngIndex = 1 To .ListCount
            strArray(lngIndex) = .List(lngIndex - 1, 0)
        Next
    End With
    strText = Join(strArray, vbLf)
    With objClipboard
        .SetText strText
        .PutInClipboard
    End With
    Set objClipboard = Nothing
End Sub

Gruß
Nepumuk

Anzeige
AW: Listboxinhalt in Zwischenablage
21.02.2006 13:02:39
Holger
Hi Nepumuk,
das ist ja schon mal super. Klappt auch. Geht das nun auch mit zwei Spalten?
Gruss
Holger Wächter
AW: Listboxinhalt in Zwischenablage
21.02.2006 13:13:09
Nepumuk
Hallo Holger,
was nicht geht, bekommt Räder verpasst!!!
Kommt darauf an, wie die Daten dann ausgegeben werden müssen. In einer Exceltabelle in welcher du zwei Spalten ausgeben willst, müssten die Daten im String so angeordnet sein:
Zelle1 vbTab Zelle2 vbLf Zelle3 vbTab Zelle4 vbLf .....
Das würde dann ausgegeben so aussehen:
 
 AB
1Zelle1Zelle2
2Zelle3Zelle4
 

Bekommst du das selber hin, oder soll ich noch mal?
Gruß
Nepumuk

Anzeige
AW: Listboxinhalt in Zwischenablage
21.02.2006 13:21:21
Holger
Der Code den Du mir eben gegeben hast war schon super. Nur kann der nur Arrays. Und mit übergeben von vbTab u.s.w. klappt das mit SAP nicht. Wollte dieses hier in eine Zwischenablage packen:
For X = 0 to 10
Zwischenablage(X, 0) = Blattliste.List(X, 2)
Zwischenablage(X, 1) = Blattliste.List(X, 1)
next X
strtext = Join(Zwischenablage, vbLf) ' *** Hier Fehler ***
Dim MyData As DataObject
Set MyData = New DataObject
MyData.SetText ZwischenablageWerte
MyData.PutInClipboard
Nur klappt das nicht wenn es mehr als eine Spalte ist.
Gruss
Holger
AW: Listboxinhalt in Zwischenablage
21.02.2006 13:27:25
Nepumuk
Hallo Holger,
von SAP hab ich zumindestens so viel Ahnung, dass ich die Buchstaben in der richtigen Reihenfolge schreiben kann. Join funktioniert nur mit eindimensionalen Arrays. Wie sollen denn die Daten in SAP eingefügt werden? Ich kann mir das so nicht vorstellen, mach mal einen kleinen !!! Screenshot.
Gruß
Nepumuk

Anzeige
AW: Listboxinhalt in Zwischenablage
21.02.2006 13:40:02
Holger
Hier noch die Grafik der Listbox aus der die Daten kommen sollen. Es ist die oben links!
https://www.herber.de/bbs/user/31279.jpg
Gruss
Holger
AW: Listboxinhalt in Zwischenablage
21.02.2006 23:41:44
Nepumuk
Hallo Holger,
nachdem ich nun 8 Stunden die AEG bewacht habe, kann ich mich nun wieder dir widmen. Versuch es mal so:
Private Sub CommandButton1_Click()
    Dim strArray() As String, strText As String
    Dim lngIndex As Long
    Dim objClipboard As DataObject
    Set objClipboard = New DataObject
    With ListBox1
        Redim strArray(1 To .ListCount)
        For lngIndex = 1 To .ListCount
            strArray(lngIndex) = .List(lngIndex - 1, 0) & _
                vbTab & .List(lngIndex - 1, 1)
        Next
    End With
    strText = Join(strArray, vbLf)
    With objClipboard
        .SetText strText
        .PutInClipboard
    End With
    Set objClipboard = Nothing
End Sub

Gruß
Nepumuk

Anzeige
AW: Listboxinhalt in Zwischenablage
24.02.2006 14:24:33
Holger
Hi Nepumuk,
mit vbTab macht der das nicht in SAP. Da geht der nur 3 Leerfelder nach rechts. Habe es aber jetzt gelöst indem man zwei Schritte macht. Einmal Tabelle1 und danach Tabelle 2 kopieren. Denn auch die Arrays hat er nciht untereinander sonder in eine Zelle nebeneinander geschreiben. Nur mit chr(13) kann man die Werte untereinander schreiben in SAP.
Danke für Deine Hilfe
Holger Wächter

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige