Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1404to1408
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

Cursorbewegung im Editiermodus in Makro

Cursorbewegung im Editiermodus in Makro
29.01.2015 11:37:58
Manfred
Hallo Excel-Kenner,
ich muss viele lange Listen (Spalten) mit Textfeldern ändern. Der Text besteht aus 12 Stellen. Die ersten 8 Stellen sind überall gleich, die letzten 4 unterschiedlich. Das 3.Zeichen muss von 3 auf 9 geändert werden. Mit "Suchen und Ersetzen" geht das auch in einem Rutsch. Allerdings geht dabei die Formatierung verloren. Diese unterscheidet wegen Ihrer Bedeutung in 4 Farben:
1.Stelle: schwarz (Kennziffer)
2.+3.Stelle: rot (Teilhaushalt)
4.-8.Stelle: blau (Produkt)
9.-12.Stelle: grün (Kostenträger)
Diese Kennzeichnungen liegen in vielen Tabellen für viele Produkte vor. Nun hat sich unser Teilhaushalt von 03 auf 09 geändert. Ich möchte eigentlich also die Tastenkombinationen als Makro speichern:
-F2- -Pos1- -rechts- -rechts- -Del- -9- -Enter- -unten-
Dabei bleibt die Formatierung erhalten. Geht das per Makro?
Mein aufgezeichnetes Makro klappt nicht, es schreibt in jeder Zelle das komplett gleiche rein. Hat wer ne Idee?
Gruß
Manfred

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Cursorbewegung im Editiermodus in Makro
29.01.2015 11:43:40
ede
Hallo Manfred,
dass würde auch per Hilfssplate gehen
=LINKS(A1;2) & "9" & RECHTS(A1;9)
dann kopieren und Werte einefügen
ede

dann hast du aber noch immer nicht ...
29.01.2015 11:50:12
Rudi
Hallo,
... die unterschiedlichen Schriftfarben.
Gruß
Rudi

AW: Cursorbewegung im Editiermodus in Makro
29.01.2015 11:49:16
Rudi
Hallo,
im Editiermodus laufen Makros nicht.
Das kann man so realisieren:
Für die Auswahl:
Sub aaaaa()
Dim r As Range
Application.ScreenUpdating = False
For Each r In Selection
r.NumberFormat = "@"
r = Left(r, 2) & "9" & Mid(r, 4)
r.Characters(1, 1).Font.Color = RGB(0, 0, 0)
r.Characters(2, 2).Font.Color = RGB(255, 0, 0)
r.Characters(4, 5).Font.Color = RGB(0, 0, 255)
r.Characters(9, 4).Font.Color = RGB(0, 128, 0)
Next r
Selection(1).Select
End Sub

Anzeige
AW: Cursorbewegung im Editiermodus in Makro
29.01.2015 11:50:18
Klaus
Hi Manfred,
im Prinzip so:
Private Sub CommandButton1_Click()
activecell.activate
SendKeys ("{F2}{HOME}{RIGHT}{RIGHT}{DEL}9~")
end sub
das geht aber nur wenn du es aus der Tabelle heraus ausrufst (zum Beispiel per Button), da F2 im Editor etwas anderes macht als in der Zelle selber.

AW: Cursorbewegung im Editiermodus in Makro
29.01.2015 12:31:27
Tino
Hallo,
habe es mal so versucht.
Suchbereich evtl. anpassen!
Farben im Code evtl. anpassen!
Sub Ersetze_Teil()
Dim rngSuchBereich As Range, rngTmp As Range, sErste$
Dim SucheNach$, ErsetzeDurch$, PosInText%

SucheNach = "?03?"
ErsetzeDurch = "09"
PosInText = 2

Set rngSuchBereich = Tabelle1.Range("A:A")


Set rngTmp = rngSuchBereich.Find(What:=SucheNach, LookIn:= _
        xlFormulas, LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:= _
        xlNext, MatchCase:=False, SearchFormat:=False)
        
If Not rngTmp Is Nothing Then
    sErste = rngTmp.Address
    Do
        With rngTmp
            .Value = Left$(.Text, PosInText - 1) & _
                     ErsetzeDurch & _
                     Right$(.Text, 12 - Len(ErsetzeDurch) - PosInText + 1)
                     
            .Characters(Start:=1, Length:=1).Font.Color = RGB(0, 0, 0)
            .Characters(Start:=2, Length:=2).Font.Color = RGB(255, 0, 0)
            .Characters(Start:=4, Length:=5).Font.Color = RGB(0, 112, 192)
            .Characters(Start:=9, Length:=4).Font.Color = RGB(0, 176, 80)
        End With
        Set rngTmp = rngSuchBereich.FindNext(rngTmp)
        If rngTmp Is Nothing Then Exit Do
    Loop While sErste <> rngTmp.Address
End If
End Sub
Gruß Tino
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige