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

Copy-Paste funktioniert nicht richtig

Copy-Paste funktioniert nicht richtig
19.02.2015 10:41:21
Andreas
Hallo zusammen,
ich versuche mittels ...ActiveSheet.Paste aus einem externen Meßprogramm die Werte mehrerer Kanäle über die Zwischenablage ins Excel (2010) zu kopieren.
Klappt soweit auch wunderbar. Allerdings wandelt Excel alle Kommazahlen größer 1 in Integer um. D.h. aus einer Kommazahl mit bis zu 14 Nachkommastellen wird ein sehr großer Ganzzahlwert.
Wenn ich nun die selben Werte, die noch in der Zwischenablage liegen, per STRG+V an die selbe Stelle im selben Arbeitsblatt manuell kopiere sind die Werte dagegen richtig.
Der Befehl PasteSpecial funktioniert mit den Zusatzangaben (xlPasteValues) gar nicht. Da läuft das Exportscript auf Fehler. Ohne Zusatz läuft das Script durch, aber mit dem selben Ergebnis wie rein mit Paste.
Muß ich hier vorab noch etwas deklarieren?
Gruß
Andreas

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

Betreff
Datum
Anwender
Anzeige
AW: Copy-Paste funktioniert nicht richtig
19.02.2015 10:47:52
RPP63
Hallo Andreas!
Ich nehme mal an, dass sich ein Text in der Zwischenablage befindet.
VBA "spricht" englisch und interpretiert Komma und Punkt anders als die (deutsche) Excel-Version.
(Wahrscheinliche) Abhilfe:
Säubere den String von Punkten.
Gruß Ralf

AW: Copy-Paste funktioniert nicht richtig
19.02.2015 11:07:38
Andreas
Hallo Ralf,
die ursprünglichen Werte haben keine 1000er-Trennzeichen sondern tatsächlich nur einen Dezimalpunkt.
Hier generiert Excel ganz alleine die 1000er Punkte bei größer 1 und ignoriert den echten Dezimalpunkt.
Und warum funktioniert das aber mit STRG + V richtig? Hier interpretiert Excel keine 1000er Trenner rein. Alle Randbedingungen sind vor dem Einfügen per Paste oder STRG + V identisch. Jedoch das Ergebnis nicht.
D.h. wie kann ich die automatisierte Formatierung durch Excel unterbinden?
Mystery....
Gruß
Andreas

Anzeige
AW: Copy-Paste funktioniert nicht richtig
19.02.2015 11:23:38
RPP63
Hi!
Ich habe es gerade mal nachgestellt:
In der Zwischenablage befindet sich der String
12345678.29
Manuell in Excel bleibt der String erhalten.
Per ActiveSheet.Paste wird daraus die Zahl
12345678,29
(was ja auch logisch ist, denn VBA lokalisiert den Dezimaltrenner)
Vielleicht verstehe ich aber auch bloß Dein genaues Anliegen (noch) nicht.
Gruß Ralf

AW: Copy-Paste funktioniert nicht richtig
19.02.2015 11:36:58
Andreas
Hi,
ja, wenn das so wäre, wäre es super.
Ist das Originalformat 0.123456789 macht Excel daraus richtigerweise 0,123456789
Ist das Original aber 9.87654321 generiert Excel per Paste daraus 987.654.321
Per STRG + V wird aber 9,87654321 eingetragen. So wie es sein sollte.
Gruß
Andreas

Anzeige
AW: Copy-Paste funktioniert nicht richtig
19.02.2015 11:42:26
RPP63
Sorry, kann ich nicht nachvollziehen!
Bei mir wird eine Zahl mit korrektem Dezimaltrenner daraus.
Ich lasse den Thread mal offen.
Vllt. kann das mal jmd. anderes ausprobieren ...
Gruß Ralf

AW: Copy-Paste funktioniert nicht richtig
19.02.2015 11:50:06
Andreas
Hab grad was probiert, damit man es nachvollziehen kann.
Ich denke, es ist wichtig, von extern ins Excel zu kopieren. Intern wird das Excel schon mit sich selber iwi klar kommen...
Notepad öffnen und einfach das hier eintragen (geht natürlich auch mit anderen Zahlen :D ):
0.123456789
0.222222222
0.333333333
1.444444444
2.555555555
Dann Copy/Paste ins Excel.
Mein Excel macht dann das hier draus:
0.123456789
0.222222222
0.333333333
1.444.444.444
2.555.555.555
Gruß
Andreas

Anzeige
Paste Manuell vs. VBA
19.02.2015 12:52:31
EtoPHG
Hallo Andreas,
Ja das ist so (bei Region/Spracheinstellung Deutsch(Deutschland), weil
a) das manuelle Ctrl-V (Einfügen) reinen Text kopiert und damit das Endresultat in EXCEL so aussieht:
0.123456789 als Text!
0.222222222 als Text!
0.333333333 als Text!
1.444.444.444 als Zahl mit Tausender-Trennzeichen
2.555.555.555 als Zahl mit Tausender-Trennzeichen
b) das gleiche passiert übrigens, wenn du die Wert genau so einzeln in Zellen eintippst (also mit Punkt-Trennzeichen, d.h. aus
0.123456789 wird ein Text
1.444444444 wird eine Zahl mit Tausendertrennzeichen.
c) das VBA einfügen mit ActiveSheet.Paste auf der US-English Interpretation von Zahlenwerten basiert und damit das Endresultat in EXCEL dann richtigerweise so aussieht:
0,123456789 als Zahl
0,222222222 als Zahl
0,333333333 als Zahl
1,444444444 als Zahl
2,555555555 als Zahl
Die Frage drängt sich auf, ob deine Messwerte vom externen Programm nicht als z.B. CSV Datei abgelegt werden können und dann per Import in Excel eingefügt. Da du uns dein 'Script' nicht offenlegst, kann ich auch nicht mehr sagen, nur dass diese Thema ungefähr 1-3mal pro Monat in diesem Forum behandelt wird!
Gruess Hansueli

Anzeige
AW: Paste Manuell vs. VBA
20.02.2015 08:29:28
Andreas
Hallo Hansueli,
ah...ok. Jetzt weiß ich schonmal, woran es liegt.
Das mit der CSV-Datei muß ich mal testen.
Zum Script: Klar, kann ich das offen legen. Besteht Excelseitig aber lediglich aus den Zeilen für den Export. Und grundsätzlich funktioniert das ja. Der Rest ist in VBS mit einigen programmspezifischen Ausdrücken.
Gruß
Andreas

AW: Paste Manuell vs. VBA
20.02.2015 11:04:06
Andreas
Hallo,
gibt es dann eine Möglichkeit aus Excel heraus das Gebietsschema des PCs von DE auf EN (USA) umzustellen? Ich weiß, ist Quick&Dirty, aber.... :D
Gruß
Andreas

312 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige