Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

"x" in "X" per VBA?

Forumthread: "x" in "X" per VBA?

"x" in "X" per VBA?
14.12.2003 17:46:10
Ina
Hallo Forum,

ich habe ein für mich grosses, für euch sicherlich ein kleines, Problem.

In einer Tabelle müssen in einem Bereich G8:M107 je nach Uhrzeit und Tag "X" eingesetzt werden.

Leider ist es manchmal recht mühsam, Uhrzeit (Zahlen & : & Zahlen) und dann wieder Shift-Taste & X-Taste zu benutzen.

Vielleicht gibt es ja in VBA eine Möglichkeit, das die kleingeschriebenen X in Grossbuchstaben gewandelt werden?!

Autokorrektur kann leider nicht angewandt werden, weil in weiteren Zellen auch Text eigegeben werden muss.

Wer kann helfen?

Danke und Gruss Ina
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: "x" in "X" per VBA?
14.12.2003 17:54:17
Ramses
Hallo

der Code gehört in das Klassenmodul der Tabelle wo es funktionieren soll.

Option Explicit


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column < 7 And Target.Column > 13 Then Exit Sub
If Target.Row < 8 And Target.Row > 108 Then Exit Sub
If UCase(Target.Value) = "X" Then
Target.Value = UCase(Target.Value)
End If
End Sub


Gruss Rainer
Anzeige
AW: "x" in "X" per VBA? Danke Ramses
14.12.2003 18:14:27
Ina
Hallo Ramses,

vielen Dank für Deinen Tipp.

Das klappt bestens!!

Gruss Ina
Merci :-)) Geschlossen o.T.
14.12.2003 18:15:13
Ramses
...
AW: "x" in "X" per VBA?
14.12.2003 18:10:07
PeterW
Hallo Ina,

per Autokorrektur kannst du den : erzeugen beispielsweise Doppelkomma ,, (oder kommt sowas etwa im Text vor?) ersetzen durch : - dadurch sind die Zeitangaben komplett auf dem nummerischen Teil der Tastatur möglich. Das x kannst du dann per aktivierter CapsLock-Taste eingeben.

Für einzelne x im Bereich hat Rainer eine Lösung angeboten. Sollten Datum UND x in einer Zelle stehen könnte folgender Code (ins Modul der Tabelle kopieren) hilfreich sein:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("G8:M107")) Is Nothing Then
Application.EnableEvents = False
If Right(Target, 1) = "x" Then
Target = Left(Target, Len(Target) - 1) & UCase(Right(Target, 1))
End If
Application.EnableEvents = True
End If
End Sub

Gruß
Peter
Anzeige
AW: "x" in "X" per VBA? Danke PeterW
14.12.2003 18:18:08
Ina
Hallo Peter,

vielen Dank für Deine interessante Variante!

Klappt besten!

Gruss Ina
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige