Anführunszeichen ersetzen

Bild

Betrifft: Anführunszeichen ersetzen
von: Hans Hauck
Geschrieben am: 28.10.2003 19:15:13

Hallo!
Ich habe ein "kleines" Problem:
In einer Exceltabelle in welche Daten aus einer CSV-Datei importiert wurden befinden sich viele Anführungszeichen.
Eine Beispielzeile sieht wie folgt aus:
"Gehäuse","Midi Tower - Enlight 300Watt EN-7247 Black/Silver",15.09.2003,75.00,"Enlight EN-7247. PFC. 300Watt. Black/Silver. 4x5.25" + 3x 3.5". USB-Tool 5.25"","","PCS108632"
Aus diesen Zeilen (mehr als 4000) sollen alle Anführungszeichen entfernt werden.
Kann jemand helfen?
Grüsse,
Hans Hauck

Bild


Betrifft: AW: Anführunszeichen ersetzen
von: WernerB.
Geschrieben am: 28.10.2003 19:20:41

Hallo Hans,

markiere den betreffenden Bereich, dann
Bearbeiten / Ersetzen / Suchen nach: " / Ersetzen durch: (hier nichts eintragen!) / Alle ersetzen


Viel Erfolg wünscht
WernerB.

P.S.: Das Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter (siehe Forums-FAQ).


Bild


Betrifft: AW: Anführungszeichen ersetzen
von: Reinhard
Geschrieben am: 28.10.2003 19:21:10

Hallo Hans,
mit Bearbeiten---Ersetezen , " durch nichts geht das, aber
Gehäuse,Midi Tower - Enlight 300Watt EN-7247 Black/Silver,15.09.2003,75.00,Enlight EN-7247. PFC. 300Watt. Black/Silver. 4x5.25 + 3x 3.5. USB-Tool 5.25,,PCS108632
in einer Zelle sieht noch wild aus.
Gruß
Reinhard


Bild


Betrifft: AW: Anführungszeichen ersetzen
von: Hans Hauck
Geschrieben am: 29.10.2003 12:36:43

Sorry, aber ich hatte mich nicht klar genug ausgedruckt, ich benötige dies in VBA, da ich jeden Tag mehrfach diese Datei bearbeiten muss.


Bild


Betrifft: AW: Anführungszeichen ersetzen
von: WernerB.
Geschrieben am: 29.10.2003 13:26:42

Hallo Hans,

markiere den betreffenden Zellbereich und starte dann dieses Makro:

Sub Hans()
    Selection.Replace What:="""", Replacement:="", _
      LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False
End Sub

Gruß WernerB.


Bild


Betrifft: AW: Anführungszeichen ersetzen
von: Hans Hauck
Geschrieben am: 29.10.2003 13:39:34

Danke für den Tipp, aber es sollte schon vollautomatisch laufen, da ich nicht immer am PC bin und verschiedene Mitarbeiter einfach den Shortcut für das Macro drücken sollen und dann die Datei ins Internet stellen.
Grüsse,
Hans


Bild


Betrifft: AW: Anführungszeichen ersetzen
von: WernerB.
Geschrieben am: 29.10.2003 14:25:00

Hallo Hans,

und wie gefällt Dir das:


Option Explicit

Sub Hans()
Dim Ru As String
    Application.ScreenUpdating = False
    Range("A1").Select
    Ru = Selection.SpecialCells(xlCellTypeLastCell).Address(False, False)
    Range("A1:" & Ru).Replace What:="""", Replacement:="", _
      LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False
    Application.ScreenUpdating = True
End Sub

Gruß WernerB.


Bild


Betrifft: AW: Anführungszeichen ersetzen
von: Reinhard
Geschrieben am: 29.10.2003 22:08:23

Hallo Hans,
vollautomatisch ist, der Mitarbeiter setzt sich auf seinen Stuhl, ein Sensor startet den Pc, wo Excel automatisch startet, das csv importiert un die Anführungszeichen entfernt, während die CD-Schublade aufgeht . ein kaffe dort steht und aus dem Diskettenlaufwerk Milch und Zucker reinfallen während der CD Brenner so vibiriert das das Umrühren entfällt :-)

Im Ernst, du schriebst:
...
In einer Exceltabelle in welche Daten aus einer CSV-Datei importiert wurden...
...
Kann man nicht sofort (und vollautomatisch *g) gleich nach dem Moment des csv-Importierens diese Anführungszeichen per Makro entfernen lassen, durch worksheet_change oder so?
Gruß
Reinhard


Bild


Betrifft: AW: Anführungszeichen ersetzen
von: Hans Hauck
Geschrieben am: 29.10.2003 22:26:21

Also wenn ich wüsste wie das mit worksheet (oder so) geht, dann würde ich das tun. Ich brauche einfach nur einen Tip, wie ich das in meinem vorhandenen Makro einfügen kann.
Grüsse,
Hans


Bild


Betrifft: AW: Anführungszeichen ersetzen
von: Reinhard
Geschrieben am: 29.10.2003 22:49:34

Hi Hans,
du brauchst eine Zelle, Bereich, wie auch immer, auf grund dessen Änderung, also durch csv Import, das Worksheet_change die Anführungszeichen ersetzt.
Angenommen, du willst Zelle D5 überwachen ob dort eine Änderung geschieht.
Dann doppelt auf Tabelle1 klicken und dann oben bei Allgemein auf den Pfeil und worksheet
auswählen, dann rechts davon Change, dann erscheint schon automatisch

Private Sub Worksheet_Change(ByVal Target As Range)
End Sub



Diese ergänzen Zu:


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(False, False) <> "D1" Then Exit Sub
'
'Hier dann den AnführungszeichendeleteCode eingeben
'
End Sub


Target ist die Zelle die geändert wurde, zB C5
Target.Address(False, False) ergibt C5
Target.Address ergibt $C$5
Target.row ergibt 5
Target.column ergibt 3
Mit dem Wissen kann man dann auch ganze Bereiche auf Änderungen überprüfen
Eine Komplikation kann sich in deinem Fall eegeben, manuelle Änderungen werden immer erfasst, aber may be könnte der Import der csv durch Datei-Import...
nicht das Change Ereignis auslösen, dann muss man weitersehen, aber probiers erstmal.
Gruß
Reinhard


 Bild

Beiträge aus den Excel-Beispielen zum Thema " Anführunszeichen ersetzen"