Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
952to956
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
952to956
952to956
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
"lokale" Autokorrektur
24.02.2008 12:38:15
fominta
Hallo
Ich möchte die Autokorrekturfunktion in Excel lokal benutzen, d.h. bestimmte Autokorrekturen nur in wenigen oder einer Datei haben. In Word geht das mit dem Trick, dass ich dem Text eine nicht benutzte Sprache zuweise, für die ich dann die speziellen Autokorrekturen definiere. Excel dagegen beharrt auch bei Zuweisung einer anderen Wörterbuch-Sprache auf die Autokorrektur Deutsch (Deutschland). Wie kann man Excel überzeugen, dass man auch andere Sprachen autokorrigieren kann?
Ersatzweise, wie lässt sich das Problem, dass ich bestimmte Autokorrekturen nicht global definieren möchte, vielleicht anders lösen?
Vielen Dank für jeden Hinweis
Fominta

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: "lokale" Autokorrektur
24.02.2008 13:00:00
Daniel
Hi
das Problem lässt sich dadurch lösen, daß die deine Lokalen Autokorrekturen per Makro eingefügt werden, sobald die entsprechende Datei aktiviert wird und wieder gelöscht werden sobald der Anwender eine andere Exceldatei aktiviert, für die diese Autokorrekturen auch verwendet werden.
damit das auch beim Öffnen und Schließen der Datei gemacht wird, brauchst du diese 4 Makros im Modul "DieseArbeitsmappe"

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call Workbook_WindowDeactivate
End Sub



Private Sub Workbook_Open()
Call Workbook_WindowActivate
End Sub



Private Sub Workbook_WindowActivate(ByVal Wn As Window)
With Application.AutoCorrect
.AddReplacement what:="a", Replacement:="aa"
.AddReplacement what:="b", Replacement:="bb"
End With
End Sub



Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
On Error Resume Next
With Application.AutoCorrect
.DeleteReplacement what:="a"
.DeleteReplacement what:="b"
End With
On Error GoTo 0
End Sub


Gruß, Daniel

Anzeige
AW: "lokale" Autokorrektur
24.02.2008 13:22:00
fominta
Hallo Daniel
Vielen Dank, dein Ansatz ist überzeugend. Leider bringt Excel VBA beim Öffnen und schließen noch eine
Fehlermeldung: Fehler beim Kompilieren. Argument nicht optional,
der Debugger verweist dabei auf die Zeilen
Private Sub Workbook_Open()
Call Workbook_WindowActivate
Welches Argument muss ich angeben?
Danke im Voraus
Fominta

AW: "lokale" Autokorrektur
24.02.2008 13:33:46
Daniel
Hi
du musst das Aktive Window angeben, also

Call Workbook_WindowActivate(ActiveWindow)


Programmtechnisch sauberer scheint mir allerdings, das Einrichten und Löschen der Autokorrektur als eigene Makros zu definieren und dann bei allen Events nur diese Makros aufzurufen und nicht die Events sich gegenseitig


Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call AutoKorrekturAUS
End Sub
Private Sub Workbook_Open()
Call AutoKorrekturEIN
End Sub
Private Sub Workbook_WindowActivate(ByVal Wn As Window)
Call AutoKorrekturEIN
End Sub
Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
Call AutoKorrekturAUS
End Sub
Public Sub AutoKorrekturEIN()
With Application.AutoCorrect
.AddReplacement what:="a", Replacement:="aa"
.AddReplacement what:="b", Replacement:="bb"
End With
End Sub
Public Sub AutoKorrekturAUS()
On Error Resume Next
With Application.AutoCorrect
.DeleteReplacement what:="a"
.DeleteReplacement what:="b"
End With
On Error GoTo 0
End Sub


Gruß, Daniel

Anzeige
AW: "lokale" Autokorrektur
24.02.2008 14:08:04
fominta
Hallo Daniel
Jetzt klappt's.
Tausend Dank
Fominta

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige