Anzeige
Archiv - Navigation
1248to1252
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

VBA - Hochkomma entfernen

VBA - Hochkomma entfernen
WalterK
Hallo,
Mit folgendem Codeteil aus einem Forum sollten die Hochkommas aus einer Tabelle entfernt werden. Bei Zahlen funktioniert das auch. Dachte eigentlich, dass es bei Text auch funktioniert. Tut es aber nicht.
Was muss geändert werden, damit alle Hochkommas in der Tabelle entfernt werden.
Option Explicit
Sub Hochzeichenentfernen()
Dim Zelle As Range
For Each Zelle In ActiveSheet.Range(Cells(1, 1), Cells(30, 3))
If Zelle = "" Or Zelle.Text = "FALSCH" Or Zelle.Value = False Then
Zelle.ClearContents
Else
If (InStr(2, Zelle.Text, ".") Or InStr(2, Zelle.Text, ":")) _
And IsDate(Zelle.Text) Then 'Text=Datum/Uhrzeit ?
Zelle.Value = CDate(Zelle.Text)
ElseIf IsNumeric(Zelle.Text) Then 'Text = Zahl ?
Zelle.Value = CDbl(Zelle.Text)
Else
Zelle.Value = Zelle.Text
End If
End If
Next Zelle
End Sub
Danke und Servus, Walter
Wenn du mit 'Hochkomma' die ' am Anfang ...
31.01.2012 21:01:01
Luc:-?
…von Texten meinst, Walter,
könnte das eigentl fktionieren, anderenfalls muss ich dich enttäuschen → die SubProz tut nichts dgl! Sie wandelt numerische Texte in Zahlen um, löscht Leer-Strings bzw Wahrheitswert FALSCH und wandelt Datum(stexte) in echtes Datum um, ansonsten übernimmt sie das Erscheinungsbild des Zellwerts als Zellwert, wobei ein nicht angezeigtes einleitendes Apostroph, was das Folgende zu Text macht, verschwinden könnte. Alle weiteren Apostrophs in Texten bleiben natürl erhalten.
Gruß Luc :-?
AW: VBA - Hochkomma entfernen
31.01.2012 22:53:54
Gerd
Hallo Walter!
With Range(Cells(1, 1), Cells(30, 1))
.Value = . Value
End With
---weiterer Code
Gruß Gerd
Anzeige
AW: VBA - Hochkomma entfernen
31.01.2012 23:17:58
WalterK
Hallo Gerd,
Das einfache Hochkomma bleibt nach Ausführen des Codes bei den Zellen mit Text erhalten, bei den Zahlen ist es nicht mehr vorhanden!
Ich möchte in der gesamten Tabelle alle Hochkommas (in der Regel stehen sie immer an 1. Stelle) entfernen.
Hier eine Beispieltabelle:
https://www.herber.de/bbs/user/78672.xls
Danke und Servus, Walter
Hochkomma --> Len(PrefixCharacter) = 1
31.01.2012 23:24:55
Matthias
Hallo Walter
Für Deine Bsp.Datei so:
Sub HochzeichenEntfernen()
Dim X&
For X = 1 To 3
If Len(Cells(4, X).PrefixCharacter) = 1 Then Cells(4, X).Value = Cells(4, X).Value
Next
MsgBox ";o)"
End Sub
Gruß Matthias
Anzeige
AW: Hochkomma --> Len(PrefixCharacter) = 1
31.01.2012 23:40:36
WalterK
Hallo Matthias,
die Hochkommas in den Textzellen werden nicht gelöscht, oder mache ich etwas falsch!
Danke für die Hilfe und Servus, Walter
AW: Ich habe es an ->Deiner<- Datei getestet
01.02.2012 00:10:00
WalterK
Hallo Matthias,
ich habe jetzt die hochgeladene Datei ausprobiert.
In den Zellen A4 und C4 ist nach Ausführen des Makros das Hochkomma nach wie vor vorhanden, in B4 ist es nicht mehr vorhanden. So scheint es jedenfalls, denn oben in der Bearbeitungszeile steht bezugnehmend auf Zelle C4 nach wie vor 'Gesamt (also mit Hochkomma).
Schreibe ich allerdings in eine andere Zelle das Wort Gesamt und überprüfe die Zelle mit C4 dann wird ein Wahrheitswert ausgegeben.
Komische Sache meine ich, so passts aber auch.
Besten Dank für die Hilfen, Servus Walter
Anzeige
AW: Ich habe es an ->Deiner<- Datei getestet
01.02.2012 00:35:08
Reinhard
Hallo Walter,
ich habe das mit XL 2000 getestet. In der bearbeitungszeile sieht man nach dem Makro
daß die Hochkommas weg sind. In allen drei Zellen.
Gruß
Reinhard
VBA - Hochkomma entfernen
01.02.2012 00:48:12
Erich
Hi Walter,
so weit ich weiß gibt es keinen 'ordentlichen' Weg für die Beseitigung der "'".
Man kann das Format einer 'sauberen' Zelle kopieren:

Sub HochkommaWeg()
Cells(3, 1).Copy
Cells(1, 1).PasteSpecial Paste:=xlPasteFormats, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
Natürlich: Hier werden alle Formate übernommen - die müssen also schon passen.
Ein anderer Weg wäre:
Den Wert der "'"-Zelle (also den Text ohne "'") in eine andere Zelle schreiben, wie gewünscht formatieren,
diese Zelle dann auf die "'"-Zelle kopieren.
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich
Anzeige
Abschließend möchte ich noch ....
01.02.2012 13:25:38
WalterK
Hallo,
... allen Helfern mitteilen, dass ich die gleiche Datei jetzt am Laptop (Excel 2003) ausprobiert habe und hier werden tatsächlich keine Hochkommas mehr angezeigt. Wieso das beim StandPC (Excel 2010) anders ist, bleibt mir ein Rätsel. Es passt aber, weil ich nun damit umzugehen weiß.
Besten Dank und Servus, Walter
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige