Excel: kopieren ohne Anführungszeichen
Die Anführungszeichen sind ein "Feature" von MS Excel, was man nicht abstellen kann ...
Wenn der Wert in einer Zelle nichtdruckbare Zeichen enhält, dann packt Excel den Zellinhalt beim "Kopieren" mit Anführungszeichen in die Zwischenablage.
Es gibt mehrere Möglichkeiten, dieses Feature zu umgehen
- OpenOffice statt MS Excel benutzen
- aus MS Excel kopieren + in MS Word einfügen + erneut alles markieren und kopieren + in den AWL-Editor einfügen
- VBA benutzen, um den kompletten Quelltext zu erzeugen
- ein VBA-Makro benutzen, um den Wert aus einer Zelle (oder Bereich) ohne Anführungszeichen in die Zwischenablage zu legen
Hier ein Beispiel zur Realisierung der letzten Variante mit dem
Kopiermakro:
* VBA-Editor öffnen: Extras > Makro > Visual Basic Editor
* Im VBA-Editor ein Modul einfügen, in das Modul dieses Makro einfügen
Code:
Sub Button_Copy_Click()
Dim MyData As DataObject
Set MyData = New DataObject
MyData.SetText Range("B2").Text [COLOR="#008000"]'ActiveCell.Text[/COLOR]
MyData.PutInClipboard
MsgBox ("Code in Zwischenablage kopiert")
End Sub
* Im Tabellenblatt in die Zelle "B2" diese Formel
Code:
=VERKETTEN("U M1.1";ZEICHEN(13);ZEICHEN(10);"U M2.2")
* In das Tabellenblatt eine
Schaltfläche einfügen (aus der Symbolleiste "
Formular"!)
* Auf die Schaltfläche
+ Rechtsklick > Text bearbeiten
+ Beschriftungstext ändern zu "Copy"
+ zum Beenden der Bearbeitung außerhalb der Schaltfläche klicken
* Auf die Schaltfläche
+ Rechtsklick > Makro zuweisen...
+ "Button_Copy_Click" auswählen
Ein Klick auf die Schaltfläche "Copy" kopiert nun den Wert der Zelle "B2" ohne Anführungszeichen in die Zwischenablage und kann dann erfolgreich in den AWL-Editor oder anderswo eingefügt werden.
Ich programmiere mit Excel 2002, in den neueren Excel-Versionen sollte es ähnlich funktionieren. Die Ausführung von Makros muß in Excel erlaubt werden.
Harald