Unendlichzeichen per VBA ersetzen
Autor
Nachricht
Cat32
Gast
Verfasst am: 01. Mrz 2011, 10:12 Rufname:
Version: Office 2003
Hallo,
Ich habe eine Tabelle, in der in einigen Spalten ein Unedlichzeichen steht. Dieses Zeichen mchte ich nun durch inf ersetzen, leider wei ich nicht, wie ich es in VBA bezeichnen soll. Vielen Dank schonmal fr die Hilfe. Verfasst am: 01. Mrz 2011, 11:40 Rufname:
Hi, ansprechen lsst sich das ber den ASCII-Code. Vermutlich ist es das Zeichen 165 der Schrifart Symbol. Setze den Cursor auf ein "unendlich" und starte dieses Makro, vorausgesetzt, es steht nicht mitten im Text
in der Zelle. Code: Sub asciiwert()
MsgBox Asc(Trim())
End Sub
Den Ausgabewert setzt Du dann in das folgende Codeschnipsel ein und baust die entspr. Vba zeichen ersetzen pdf. Schleife(n) drumrum! Du kannst natrlich auch andere Schriftarten nehmen - aber nicht Symbol! Code: Dim z As Long, sp As Integer
If Asc(Trim(Cells(z, sp))) = 165 Then
With Cells(z, sp)
= "Arial"
= "inf"
End With
End If
Gru Frank-B
Verfasst am: 01.
Vba Zeichen Ersetzen In De
Der Vorteil: Leerzeichen innerhalb des Zellwertes werden nicht entfernt (z. "Vorname Nachname" innerhalb einer Zelle). Ebenso werden mehrere aufeinanderfolgende Leerzeichen zwischen Werten auf ein Leerzeichen reduziert. Die Formelfunktion =SÄUBERN() dagegen entfernt alle nicht druckbaren Zeichen innerhalb der Zelle. Nicht druckbare Zeichen werden innerhalb der Zelle mit einem Kästchen dargestellt. Nachdem die betroffenen Spalten mit einer Formelfunktion bereinigt wurden, sollten Sie im Anschluss noch die Formeln entfernen. Und so funktioniert es:
Wählen Sie die betroffene Spalte mit den Formelfunktionen aus. Kopieren Sie die gesamte Spalte mit "Strg+C" oder der rechten Maustaste + "Kopieren",
klicken Sie anschließend die rechte Maustaste und
wählen in den Einfügeoptionen die Variante "Inhalte einfügen" aus. Wiederholen Sie den Vorgang ggf. Vba zeichen ersetzen 1. für weitere Spalten. Alternativ kann der Vorgang auch gleich für mehrere Spalten, Zeilen oder den gesamten Zellbereich ausgeführt werden. Markieren Sie hierfür zunächst den gewünschten Bereich, bevor Sie mit Punkt 2 fortfahren.
Vba Zeichen Ersetzen Command
05. 03. 2020, 12:54
# 1
stillo
VBA - Sonderzeichen suchen & ersetzen
Hallo,
ich möchte gerne in einem Word-Dokument zwei (an vielen Stellen vorkommende) Sonderzeichen jeweils per Makro durch ein Kontrollkästchen (CheckBox) bzw. ein Textfeld ersetzen. Bei den Sonderzeichen handelt es sich um ein Kästchen und Auslassungspunkte (1 Zeichen). Um das zu visualisieren:
Zunächst dachte ich an ein einfaches Suchen & Ersetzen, aber über den normalen Word-Dialog kann ich die Zeichen nicht einfügen. Dann habe ich mich im Forum eingelesen in Makros für suchen & ersetzen (z. Zeichen ersetzen in Textbox - Visual Basic Script (VBS) / Active Server Pages (Classic ASP) - VB-Paradise 2.0 – Die große Visual-Basic- und .NET-Community. B. hier und hier). Aber damit habe ich es nicht geschafft. Vor allem aus zwei Gründen:
1) Erstens bekomme ich nicht heraus, welches das erste Sonderzeichen im Ausgangstext ist. Über die Zwischenablage kann ich es in den VB-Editor nicht einfügen, stattdessen erscheint wird immer ein "•"-Zeichen eingefügt. 2) Zweitens kann ich den Ersetzen-Text in einem Makro nicht mit den Checkboxes bzw. den Textfeldern versehen. Als einfachen Text kann ich sie ja nicht einfügen.
Vba Zeichen Ersetzen Password
AscW(Selection). Damit kannst du dann einen zweiten Suchdurchlauf starten. Gerhard
05. 2020, 17:44
# 4
Neuer Benutzer
Registrierung: 22. 10. 2014
Wenn es wie im Beispiel mit den alten Formular-Elementen sein soll, dürfte das funktionen (leichte Anpassung der Version von Gerhard H):
Dim Feld As FormField
Set Feld = (Range:=suchbereich, Type:=wdFieldFormTextInput)
= ChrW(&HF0A8&)
Set Feld = (Range:=suchbereich, Type:=wdFieldFormCheckBox)
06. 2020, 11:04
# 5
Registrierung: 26. 07. 2006
Wobei, wenn ich die grauen Schattierungen im Ausgangsdokument sehe, könnte es sich hier auch um Felder oder Aufzählungszeichen handeln. Die lassen sich so nicht ersetzen. Windows 10, Office 2010
06. 2020, 11:09
# 6
Hallo Halweg,
ich habs so verstanden, dass oben der Ist-Zustand gezeigt wird, und die grauen Dinger unten (Steuerelemente) den Zielzustand symbolisieren sollen. 06. 2020, 11:25
# 7
Ach so, klar. Sonderzeichen Suchen und Ersetzen in Excel. Dann reicht ja das Ersetzen des jeweiligen Zeichens z. mit der obigen ChrW() Schreibweise durch den Inhalt der Zwischenablage, nachdem man dort das korrekte Feld reinkopiert hat.
Vba Zeichen Ersetzen Pdf
ErsetzenDurch = ", " For Each Zelle In edRange = bstitute(, SuchenNach, ErsetzenDurch) Next Zelle On Error GoTo 0 End Sub Das Makro ersetzt in allen verwendeten Zellen des aktiven Tabellenblatts den Dezimalpunkt durch ein Dezimalkomma. Um das Makro aufzurufen, aktivieren Sie das gewünschte Tabellenblatt, drücken die Tastenkombination ALT F8 und wählen das Makro ZEICHENTAUSCHEN aus. Um zu steuern, welche Inhalte gesucht und ersetzt werden, passen Sie die beiden Variablen SUCHENNACH und ERSETZENDURCH im Makro an.
Ich habe schon Texte gesehen, die das "|" für alle Zeichen
über einem bestimmten ASCII verwendet haben. Man müsste überprüfen ob es sich um UniCode,
normaler ASCII oder 7Bit ASCII handelt. Und warum befindet sich das "|" immer zwischen den
Zeichen. Vielleicht ist es ja UniCode? VBA - Sonderzeichen suchen & ersetzen - MS-Office-Forum. Also ein zwei Byte Code. Müsste ich aber erst näher untersuchen. hey leute also auf den code kamm ich auch schon:
jedoch funktionierte es nicht und ich wante mich daraufhin an dieses forum hier und kamm dann auf folgenden code:
Text = Replace(TestString, CStr(Chr(9)), "\")
Dann ist es ein einfacher Tabulator, der die anderen Zeichen
einfach trennen soll. Gibt es auch als Konstante: VBTab
Visual Basic Script (VBS) / Active Server Pages (Classic ASP) »