Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: This feature currently requires accessing the site using the built-in Safari browser.
Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Diskutiere Makro ohne Zwischenablage im Microsoft Office Suite Forum im Bereich Office-Produkte; Ola,
ich benutze seit jahren ein aufgezeichnetes Makro, um zwei Buchstaben, zwischen denen die Einfügemarke steht, gegeneinander auszutauschen...
#1
P
PCDjoe
Bekanntes Mitglied
Themenersteller
Dabei seit
01.08.2001
Beiträge
4.143
Reaktionspunkte
0
Ort
31638 Stöckse
Ola,
ich benutze seit jahren ein aufgezeichnetes Makro, um zwei Buchstaben, zwischen denen die Einfügemarke steht, gegeneinander auszutauschen. Das Ding hat nur einen Nachteil: Es macht jedes mal die Zwischenablage platt. Es gibt sicher eine Abwandlung, die ohne Zwischenablage funktioniert: Wäre schön, wenn das jemand wüsste
Code:
Sub TauschZwei()
'
' TauschZwei Makro
' Makro aufgezeichnet am 21.06.2001
'
Selection.MoveLeft Unit:=wdCharacter, Count:=1, Extend:=wdExtend
Selection.Cut
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.Paste
Selection.MoveLeft Unit:=wdCharacter, Count:=1
End Sub
#2
M
Matjes
Bekanntes Mitglied
Dabei seit
22.08.2001
Beiträge
2.308
Reaktionspunkte
0
Hallo PCDJoe,
dann probier mal diese Version.
Gruß Matjes
Code:
Sub TauschZwei_fuerPCDJoe_ohneBenutzungDerZwischenablage()
Dim mytext As String
mytext = Selection.Text
If Len(mytext) < 2 Then
MsgBox (Es sind weniger als 2 Zeichen selektiert.)
Else
mytext = Right(mytext, 1) & Left(mytext, Len(mytext) - 1)
Selection.Text = mytext
End If
End Sub
#3
P
PCDjoe
Bekanntes Mitglied
Themenersteller
Dabei seit
01.08.2001
Beiträge
4.143
Reaktionspunkte
0
Ort
31638 Stöckse
ola,
danke, Matjes, aber die Funktionsweise stimmt so nicht: Zwei zeichen zu markieren ist nicht praktikabel, das hab ich schon versucht: Die Schreibmarke steht zwischen den zu vertauschenden Zeichen (ohne Markierung und da soll es auch wieder hin.
Ich hab also am Anfnag und am Ende ein wenig cursorschubsen angehängt Jetzt funktioniert es, sieht aber elende aus Geht das besser?
Code:
Sub TauschZwei_fuerPCDJoe_ohneBenutzungDerZwischenablageKorr()
Dim mytext As String
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.MoveLeft Unit:=wdCharacter, Count:=2, Extend:=wdExtend
mytext = Selection.Text
If Len(mytext) < 2 Then
MsgBox (Es sind weniger als 2 Zeichen selektiert.)
Else
mytext = Right(mytext, 1) & Left(mytext, Len(mytext) - 1)
Selection.Text = mytext
End If
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.MoveLeft Unit:=wdCharacter, Count:=1
End Sub
#4
M
Matjes
Bekanntes Mitglied
Dabei seit
22.08.2001
Beiträge
2.308
Reaktionspunkte
0
Hallo PCDJoe,
ich hab jetzt deinen alten Makro genommen und nur Cut und Paste ersetzt.
Code:
Sub TauschZwei_new()
Dim Mytext As String
Selection.MoveLeft Unit:=wdCharacter, Count:=1, Extend:=wdExtend
Mytext = Selection.Text
Selection.Text =
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.Text = Mytext
Selection.MoveLeft Unit:=wdCharacter, Count:=1
End Sub