Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1332to1336
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 Wörter überschreiben

VBA Wörter überschreiben
21.10.2013 09:55:53
Tom
Hallo Leute!
steh vor einem kleinen Problem: Ich möchte nämlich ein bestimmtes Wort("EXIT") im Excel durch einen Strichtpunkt ';' ersetzen und zwar nach jedem 80. vorkommenden Zeichen.
Ein Beispiel:
1. Zeile im Excel(mehrere SPalten!)
THIS 'CODE: ' !! 'ABFE'!! ' NICHT IN SVZ ' !! EXIT '3650' !! ' VORHANDEN!' BUT IS AMAND_TST_BIS = '2800-12-31-23.59.59.000000' EXIT AND ID = '038' NOT EXISTS FROM EXIT SVZK THE TABELLE AMAND_TST_BIS EXIT
2. Zeile im Excel (mehrere Spalten!)
THIS 'CODE: ' !! 'URUH'!! ' NICHT IN SVZ ' !! EXIT '3880' !! ' VORHANDEN!' BUT IS AMAND_TST_BIS = '2900-12-31-23.59.59.000000' EXIT AND ID = '002' NOT EXISTS FROM EXIT SVZK THE TABELLE AMAND_TST_BIS EXIT
... unendlich viele Zeilen
Wie kann ich das am besten mit einem Makro lösen damit jedes 80. "EXIT" (egal in welcher Zeile/Spalte stehend) durch einen ';' ersetzt wird?
danke
lG

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Wörter überschreiben
21.10.2013 10:04:24
Hajo_Zi
interpretiere ich das richtig
EXIT soll ersetzt werden durch ;
und
EXITS durch ;S

AW: VBA Wörter überschreiben
21.10.2013 10:08:19
Tom
Hy,
in diesen Texten gibt es kein Wort mit "EXITS" - deshalb nur das Wort "EXIT" durch einen ';' ersetzen und nur dann, wenn es das 80. vorkommende "EXIT" ist.
Gruß

AW: VBA Wörter überschreiben
21.10.2013 10:10:26
Hajo_Zi
Du hast dann den falschen Text gepostet.
THIS 'CODE: ' !! 'ABFE'!! ' NICHT IN SVZ ' !! EXIT '3650' !! ' VORHANDEN!' BUT IS AMAND_TST_BIS = '2800-12-31-23.59.59.000000' EXIT AND ID = '038' NOT EXISTS FROM EXIT SVZK THE TABELLE AMAND_TST_BIS EXIT

da ist EXITS enthalten.
Gruß Hajo

Anzeige
AW: VBA Wörter überschreiben
21.10.2013 10:14:58
Tom
Genau lesen ;)
im Text steht EXISTS und nicht EXITS ... dh. das EXISTS bitte nicht beachten..
lg

AW: VBA Wörter überschreiben
21.10.2013 10:18:20
Hajo_Zi
Entschuldigung.



Tabelle1
 A
12'THIS 'CODE: ' !! 'ABFE'!! ' NICHT IN SVZ ' !! EXIT '3650' !! ' VORHANDEN!' BUT IS AMAND_TST_BIS = '2800-12-31-23.59.59.000000' EXIT AND ID = '038' NOT EXISTS FROM EXIT SVZK THE TABELLE AMAND_TST_BIS EXIT
13'THIS 'CODE: ' !! 'ABFE'!! ' NICHT IN SVZ ' !! EXIT '3650' !! ' VORHANDEN!' BUT IS AMAND_TST_BIS = '2800-12-31-23.59.59.000000' ; AND ID = '038' NOT EXISTS FROM ; SVZK THE TABELLE AMAND_TST_BIS ;

verwendete Formeln
Zelle Formel Bereich R1C1 für Add In
A13=LINKS(A12;80) &WECHSELN(TEIL(A12;81;LÄNGE(A12) ) ;"EXIT";";")  =LEFT(R[-1]C,80) &SUBSTITUTE(MID(R[-1]C,81,LEN(R[-1]C) ) ,"EXIT",";")

http://excel-inn.de/dateien/vba_beispiele/tabellenanzeige_in_html_addin.zip
http://hajo-excel.de/tools.htm
XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007
Add-In-Version 12.03 einschl 64 Bit

Gruß Hajo

Anzeige
AW: VBA Wörter überschreiben
21.10.2013 10:29:58
Tom
kann man dies irgendwie in VBA ummüntzen?
lg

AW: VBA Wörter überschreiben
21.10.2013 10:34:32
Hajo_Zi

Option Explicit
Sub Ersetzen()
Dim LoLetzte As Long
Dim LoI As Long
LoLetzte = IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows. _
Count)
For LoI = 1 To LoLetzte
Cells(LoI, 1) = Left(Cells(LoI, 1), 80) & Application.WorksheetFunction.Substitute(Mid( _
Cells(LoI, 1), 81), "EXIT", "")
Next LoI
End Sub
Gruß Hajo

AW: VBA Wörter überschreiben
21.10.2013 10:18:21
Rudi
Hallo,
teste mal:
Sub replaceEXIT()
Dim arrTmp, i As Long, j As Long, n As Integer
arrTmp = Cells(1, 1).CurrentRegion
For i = 1 To UBound(arrTmp)
For j = 1 To UBound(arrTmp, 2)
If arrTmp(i, j) Like "* EXIT *" Then
n = n + 1
If n = 80 Then
arrTmp(i, j) = Replace(arrTmp(i, j), "EXIT", ";")
n = 0
End If
End If
Next j
Next i
Cells(1, 1).Resize(UBound(arrTmp), UBound(arrTmp, 2)) = arrTmp
End Sub
Gruß
Rudi

Anzeige
AW: VBA Wörter überschreiben
21.10.2013 10:28:08
Tom
Hallo,
beim UBound bekomm ich eine Fehlermeldung mit "Typen unverträglich.."
was passt da nicht? falscher DT?
lg

AW: VBA Wörter überschreiben
21.10.2013 10:35:13
Rudi
Hallo,
deine Zeilen müssen in A1 beginnen.
Keine komplett leeren Zeilen oder Spalten auf dem Blatt.
Gruß
Rudi

AW: VBA Wörter überschreiben
21.10.2013 10:41:56
Tom
Das ist aber bei mir nicht der Fall, denn es gibt leere Zeilen/Spalten auf dem Tabellenblatt usw ;(
gibts da ne andere lösung?

AW: VBA Wörter überschreiben
21.10.2013 10:44:39
Rudi
Hallo,
versuchs mal mit
arrTmp = Activesheet.UsedRange
Gruß
Rudi

AW: VBA Wörter überschreiben
23.10.2013 15:33:03
Tom
Hallo,
klappt super!
wie kann ich die fkt umschreiben, damit NUR das letzte vorkommende EXIT im Excel überschrieben wird?
lg
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige