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

DataObject:PutInClipboard CloseClipboard fehlgesch

DataObject:PutInClipboard CloseClipboard fehlgesch
Reinhard
Hallo Wissende,
es geht zwar um Word 2000 ist aber hier irrelevant *glaub*
In Word koipiere ich eine Spalte einer Word-Tabelle mit Strg+c in die zwischenablage.
In den Zellen der Spalte steht immer Text, dann Zahl:
ABC1
ABC12
ABC6
Wegen späterer Sortierung will ich es aber so haben:
ABC001
ABC012
ABC006
Deshalb lese ich mit nachfolgendem Code die Zwischenablage aus, trenne Text und zahl jedes Elements und füge es dann mit formatierter Zahl wieder zusammen.
Achso, Beim Auslesen der Zwischenablage sind alle Einträge durch vbCrLF getrennt, also füge ich die auch zwischen jedes Element ein.
Will ich nun den Ergebnisstring mit PutInClipBoard in die Zwischenablage schreiben, kommt in der SChreibzeile im Code der Fehler:
Laufzeitfehler ...(lange zahlenreihe)
DataObject:PutInClipboard CloseClipboard fehlgeschlagen
Sub ZahlWandeln()     '(ByVal NurZahl As Boolean)
Dim MyData As New DataObject, strSpalte As String, S, N As Long, Pos As Integer
MyData.GetFromClipboard
S = Split(MyData.GetText(1), Chr(13) & Chr(10))
For N = LBound(S) To UBound(S) - 1
For Pos = 1 To Len(S(N))
If Asc(Mid(S(N), Pos, 1)) 

Danke ^Gruß
Reinhard

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
vielleicht Zeilenweisen...
28.05.2011 15:38:38
Tino
Hallo,
versuch mal und schreibe Zeilenweise in der For Schleife in die Zwischenablager.
Gruß Tino
AW: vielleicht Zeilenweisen...
28.05.2011 16:17:40
Reinhard
Hallo Tino,
danke für deine Mühe, habe es durch rumprobieren lösen können.
Scheinbar muß man vor jedem neuen Zugriff auf die Zwischenablage
Set MyData = New DataObject
durchführen.
Zumindest klappt es jetzt bei mir.
Gruß
Reinhard
Problem gelöst
28.05.2011 16:15:16
Reinhard
Hallo,
Set MyData = New DataObject
MyData.SetText strSpalte
MyData.PutInClipboard
Scheinbar muß man für jeden Put oder get zugriff in einem Code auf die zwischenablage

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige