Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
652to656
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
652to656
652to656
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Paste Funktion in VBA
13.08.2005 23:41:01
Stephan
Hallo Zusammen,
ich habe Probleme mit der Simulation einer Paste Funktion. Wenn ich untenstehende Daten manuell in ein Datenblatt einkopiere bleiben die Daten unverändert (außer, das die xxxx.x Werte linksbündig sind, was nicht weiter stört). Wenn ich den gleichen Befehl über eine Programmierung auslöse = auch als Aufgezeichnetes Makro:
(Zur Erklärung: Das Makro wird bedient im Moment wenn man vorher das Clipboard über die Copy Funktion mit den Daten gefüllt hat)
"Selection.paste"
Werden die Werte in der ersten Spalte aus unerfindlichen Gründen in Zahlen mit Komma umgewandelt xxxx,x . Was den Rest meiner Anwendung, der auf einer SVERWEIS funktion basiert durcheinander bringt. Hat jemand eine hierzu eine Idee.
Wie gesagt: Selbst das autenthisch aufgenommene Makro des "Paste" Vorgangs reagiert anders wenn man es anschließend wieder aufruft.
Viele Grüße
Stephan

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

Betreff
Datum
Anwender
Anzeige
AW: Paste Funktion in VBA
14.08.2005 00:00:47
K.Rola
Hallo,
wäre schön, wenn du den relevanten Codeschnipsel posten könntest.
Nur mal als Hinweis, während einer Makroaufzeichnung ist Excel mit den lokalisierten
Einstellungen am werkeln. Wenn du das Makro abspielst, ist VBA am werkeln und da gelten
teilweise andere Regeln. Beispiel Dezimalzeichen in Excel in Deutschland das Komma,
VBA will aber einen Punkt. Ich denke, dass dein Problem in dieser Richtung liegt.
Gruß K.Rola
AW: Paste Funktion in VBA
14.08.2005 04:42:40
Stephan
Codebeispiele:
1) und 2) ist was vom Macro Recorder aufgezeichnet wird. Und 3 ist was ich unter VBA mache mit allen möglichen Variablen, die ich durchprobiert habe aber die verfluchten Kommas verschwinden nicht. Ich denke dein Tip geht in die richtige Richtung, aber wie kann man darauf reagieren? Es muss doch irgendwelche Optionen geben, die dem manuellen Pasten entsprechen....
1) ActiveSheet.Paste
2) Selection.PasteSpecial
3) wsActiveSheet.Range("B8").PasteSpecial
Viele Grüße
Stephan
Anzeige
AW: Paste Funktion in VBA
14.08.2005 14:51:57
K.Rola
Hallo,
lad mal ein Beispiel hoch.
Gruß K.Rola
AW: Paste Funktion in VBA (Lösung gefunden!)
14.08.2005 20:19:04
Stephan
Dies ist die zu importierende Textdatei.
https://www.herber.de/bbs/user/25626.txt
Die könnte ich auch übers Dateisystem einlesen aber aus Komfortgründen möchte ich auch ein Einkopieren über Copy Paste erlauben. Dabei passiert das Pasten aber über eine selbst geschriebene Menüfunktion die ich "Import via Clipboard" nenne, da ich direkt nach dem Pasten noch ein paar andere Dinge erledigt werden müssen, damit die Daten konstant bleiben...
Wie auch immer. Das Problem kannst du einfach nachvollziehen indem du den Paste Vorgang mit dem Macrorecorder aufnimmst und anschließend das Makro zum "Pasten" benutzt. Mit vorher gefülltem Clipboard natürlich.
Das Ergebnis: beim manuellen einsetzen über die Standard Paste Funktion bleiben die Daten mit "." erhalten. Beim genau gleichen Vorgang mit dem Makrorecorder werden alle Punkte in Kommas verwandelt.
Ich kenne auch inzwischen selbst den Hintergrund und einen Lösungsweg (gefunden über eine Problembeschreibung mit Datumsformaten)
Bei der manuellen Bedienung nutzt Excel die landesspezifischen Einstellungen für Datenformate. Die VBA Umgebung benutzt aber immer die amerikanischen Formate, daher der Unterschied.
Um VBA genau wie das manuelle Einsetzen reagieren zu Lassen muss man das durch den Makrorekorder aufgezeichnete
„ActiveSheet.Paste“ durch den direkten Aufruf des Einfügen Commands ersetzen mit:
„
Application.CommandBars.FindControl(ID:=22).Execute
'22 ist die ID der "Einfügen Funktion des Menüs Bearbeiten
„
Dann funktioniert es genau gleich.
Viele Grüße
Stephan
Anzeige

106 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige