Discussion:
Text einer Spalte in Grossbuchstaben umwandeln
(zu alt für eine Antwort)
Henriette van de Haar
2007-02-17 17:54:01 UTC
Permalink
Hallo alle,

weiss jemand, wie man den Text einer Spalte in Grossbuchstaben umwandelt?

Makrotechnisch scheint dies nur zu bewerkstelligen sein, indem ich die
Spalte kopiere (zum Beispiel nach B), und in jeder Zelle der Spalte, wo
die Grossbuchstaben erscheinen sollen (zum Beispiel in Spalte A) das
Makro "=Gross(b:b)" eintrage.

Wahrscheinlich ist eine Visual-Basic-Funktion sinnvoller?

Henriette van de Haar, Hamburg
Hajo_Zi
2007-02-17 18:17:52 UTC
Permalink
Hallo Henriette,

http://hajo-excel.de/chCounter3/getfile.php?id=52

Gruß Hajo
MVP für Microsoft Excel
Betriebssystem Vista und Excel Version2007
http://Hajo-Excel.de/
Post by Henriette van de Haar
Hallo alle,
weiss jemand, wie man den Text einer Spalte in Grossbuchstaben umwandelt?
Makrotechnisch scheint dies nur zu bewerkstelligen sein, indem ich die
Spalte kopiere (zum Beispiel nach B), und in jeder Zelle der Spalte, wo
die Grossbuchstaben erscheinen sollen (zum Beispiel in Spalte A) das Makro
"=Gross(b:b)" eintrage.
Wahrscheinlich ist eine Visual-Basic-Funktion sinnvoller?
Henriette van de Haar, Hamburg
Henriette van de Haar
2007-02-17 20:56:18 UTC
Permalink
Hallo Hajo,
Post by Hajo_Zi
Hallo Henriette,
http://hajo-excel.de/chCounter3/getfile.php?id=52
Ich habe mir den Visual Basic Code angeschaut. Mir ist völlig unklar,
welche Subs ich in meiner Datei wo eintragen muss. Am passendsten wäre
wohl die "Tabelle2", wo die Spalten C und D in Grossbuchstaben
erscheinen (ich selbst brauche eine Routine, wonach in jeder Tabelle die
Spalte A in Grossbuchstaben erscheint).
Ich verstehe aber zu wenig von der Materie, um zu wissen, wo ich die
Sachen eintragen muss. Ich weiss nicht, ob ich die Subroutine Gross2()
brauche. Ich weiss auch nicht, wie ich diese Routinen ausführen soll.
Ich kenne ja nur das Ausfüllen in einer Zelle mit (=function(a,b,....).
Sie sollen ja eigentlich automatisch ausgeführt werden. Kannst Du mir
helfen?

Gruss,
Henriette
Post by Hajo_Zi
Gruß Hajo
MVP für Microsoft Excel
Betriebssystem Vista und Excel Version2007
http://Hajo-Excel.de/
Post by Henriette van de Haar
Hallo alle,
weiss jemand, wie man den Text einer Spalte in Grossbuchstaben umwandelt?
Makrotechnisch scheint dies nur zu bewerkstelligen sein, indem ich die
Spalte kopiere (zum Beispiel nach B), und in jeder Zelle der Spalte,
wo die Grossbuchstaben erscheinen sollen (zum Beispiel in Spalte A)
das Makro "=Gross(b:b)" eintrage.
Wahrscheinlich ist eine Visual-Basic-Funktion sinnvoller?
Henriette van de Haar, Hamburg
Henriette van de Haar
2007-02-17 20:56:42 UTC
Permalink
Hallo Hajo,
Post by Hajo_Zi
Hallo Henriette,
http://hajo-excel.de/chCounter3/getfile.php?id=52
Ich habe mir den Visual Basic Code angeschaut. Mir ist völlig unklar,
welche Subs ich in meiner Datei wo eintragen muss. Am passendsten wäre
wohl die "Tabelle2", wo die Spalten C und D in Grossbuchstaben
erscheinen (ich selbst brauche eine Routine, wonach in jeder Tabelle die
Spalte A in Grossbuchstaben erscheint).
Ich verstehe aber zu wenig von der Materie, um zu wissen, wo ich die
Sachen eintragen muss. Ich weiss nicht, ob ich die Subroutine Gross2()
brauche. Ich weiss auch nicht, wie ich diese Routinen ausführen soll.
Ich kenne ja nur das Ausfüllen in einer Zelle mit (=function(a,b,....).
Sie sollen ja eigentlich automatisch ausgeführt werden. Kannst Du mir
helfen?

Gruss,
Henriette
Post by Hajo_Zi
Gruß Hajo
MVP für Microsoft Excel
Betriebssystem Vista und Excel Version2007
http://Hajo-Excel.de/
Post by Henriette van de Haar
Hallo alle,
weiss jemand, wie man den Text einer Spalte in Grossbuchstaben umwandelt?
Makrotechnisch scheint dies nur zu bewerkstelligen sein, indem ich die
Spalte kopiere (zum Beispiel nach B), und in jeder Zelle der Spalte,
wo die Grossbuchstaben erscheinen sollen (zum Beispiel in Spalte A)
das Makro "=Gross(b:b)" eintrage.
Wahrscheinlich ist eine Visual-Basic-Funktion sinnvoller?
Henriette van de Haar, Hamburg
Hajo_Zi
2007-02-17 21:14:20 UTC
Permalink
Hallo Henriette,

Starte deb VBA Editor (Alt+F11), Febster sollte zweigeteilt sein (ansonsten
Strg+R), Doppelklick auf DieseArbeitsmappe und folgenden Code ins rechte
Fenster.

Option Explicit

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
'**************************************************
'* H. Ziplies *
'* 16.08.03 *
'* erstellt von ***@web.de *
'* http://Hajo-Excel.de/ *
'**************************************************
' alle Buchstaben Groß in einem bestimmten Bereich
' Spalte 3 und 4 (C;D)
Dim RaZelle As Range
Application.EnableEvents = False
For Each RaZelle In Range(Target.Address)
If RaZelle.Column = 1 Then
RaZelle = UCase(RaZelle)
End If
Next RaZelle
Application.EnableEvents = True
End Sub


Gruß Hajo
MVP für Microsoft Excel
Betriebssystem Vista und Excel Version2007
http://Hajo-Excel.de/
Post by Henriette van de Haar
Hallo Hajo,
Post by Hajo_Zi
Hallo Henriette,
http://hajo-excel.de/chCounter3/getfile.php?id=52
Ich habe mir den Visual Basic Code angeschaut. Mir ist völlig unklar,
welche Subs ich in meiner Datei wo eintragen muss. Am passendsten wäre
wohl die "Tabelle2", wo die Spalten C und D in Grossbuchstaben erscheinen
(ich selbst brauche eine Routine, wonach in jeder Tabelle die Spalte A in
Grossbuchstaben erscheint).
Ich verstehe aber zu wenig von der Materie, um zu wissen, wo ich die
Sachen eintragen muss. Ich weiss nicht, ob ich die Subroutine Gross2()
brauche. Ich weiss auch nicht, wie ich diese Routinen ausführen soll. Ich
kenne ja nur das Ausfüllen in einer Zelle mit (=function(a,b,....). Sie
sollen ja eigentlich automatisch ausgeführt werden. Kannst Du mir helfen?
Gruss,
Henriette
Post by Hajo_Zi
Gruß Hajo
MVP für Microsoft Excel
Betriebssystem Vista und Excel Version2007
http://Hajo-Excel.de/
Post by Henriette van de Haar
Hallo alle,
weiss jemand, wie man den Text einer Spalte in Grossbuchstaben umwandelt?
Makrotechnisch scheint dies nur zu bewerkstelligen sein, indem ich die
Spalte kopiere (zum Beispiel nach B), und in jeder Zelle der Spalte, wo
die Grossbuchstaben erscheinen sollen (zum Beispiel in Spalte A) das
Makro "=Gross(b:b)" eintrage.
Wahrscheinlich ist eine Visual-Basic-Funktion sinnvoller?
Henriette van de Haar, Hamburg
Henriette van de Haar
2007-02-17 21:11:51 UTC
Permalink
Post by Hajo_Zi
Hallo Henriette,
http://hajo-excel.de/chCounter3/getfile.php?id=52
Hallo Hajo,

inwischen habe ich die Subroutine Private Sub Worksheet_Change(ByVal
Target As Excel.Range), die die Spalten C und D in Grossbuchstaben
verwandelt, richtig eingefügt. Es funktioniert! Ich danke Dir für den Code!
Aber nicht nachträglich.
Was ich jetzt noch bräuchte ist:
- nachträglich wird eine ganze Spalte A in Grossbuchstaben umgewandelt
- und dies in einer Datei mit 26 Tabellen

Gruss,
Henriette
Post by Hajo_Zi
Gruß Hajo
MVP für Microsoft Excel
Betriebssystem Vista und Excel Version2007
http://Hajo-Excel.de/
Post by Henriette van de Haar
Hallo alle,
weiss jemand, wie man den Text einer Spalte in Grossbuchstaben umwandelt?
Makrotechnisch scheint dies nur zu bewerkstelligen sein, indem ich die
Spalte kopiere (zum Beispiel nach B), und in jeder Zelle der Spalte,
wo die Grossbuchstaben erscheinen sollen (zum Beispiel in Spalte A)
das Makro "=Gross(b:b)" eintrage.
Wahrscheinlich ist eine Visual-Basic-Funktion sinnvoller?
Henriette van de Haar, Hamburg
Hajo_Zi
2007-02-17 21:23:24 UTC
Permalink
Hallo Henriele,

in ein Modul folgendes Makro
Option Explicit

Sub Groß2()
'**************************************************
'* H. Ziplies *
'* 17.02.2007 *
'* erstellt von ***@web.de *
'* http://Hajo-Excel.de/ *
'**************************************************
' alles in Großbuchstaben in Spalte A, in allen Tabellen
Dim WsTabelle As Worksheet
Dim RaZelle As Range
Dim LoLetzte As Long
Dim LoI As Long
Application.ScreenUpdating = False
For Each WsTabelle In Sheets
With WsTabelle
' unabhängig von Excelversion für Spalte A (1)
LoLetzte = IIf(IsEmpty(.Cells(Rows.Count, 1)),
.Cells(Rows.Count, 1).End(xlUp).Row, .Rows.Count)
For LoI = 1 To LoLetzte
.Cells(LoI, 1) = UCase(.Cells(LoI, 1))
Next LoI
End With
Next WsTabelle
Application.ScreenUpdating = True
End Sub

Starten über Extra, Makro.

Gruß Hajo
MVP für Microsoft Excel
Betriebssystem Vista und Excel Version2007
http://Hajo-Excel.de/
Post by Henriette van de Haar
Post by Hajo_Zi
Hallo Henriette,
http://hajo-excel.de/chCounter3/getfile.php?id=52
Hallo Hajo,
inwischen habe ich die Subroutine Private Sub Worksheet_Change(ByVal
Target As Excel.Range), die die Spalten C und D in Grossbuchstaben
verwandelt, richtig eingefügt. Es funktioniert! Ich danke Dir für den Code!
Aber nicht nachträglich.
- nachträglich wird eine ganze Spalte A in Grossbuchstaben umgewandelt
- und dies in einer Datei mit 26 Tabellen
Gruss,
Henriette
Post by Hajo_Zi
Gruß Hajo
MVP für Microsoft Excel
Betriebssystem Vista und Excel Version2007
http://Hajo-Excel.de/
Post by Henriette van de Haar
Hallo alle,
weiss jemand, wie man den Text einer Spalte in Grossbuchstaben umwandelt?
Makrotechnisch scheint dies nur zu bewerkstelligen sein, indem ich die
Spalte kopiere (zum Beispiel nach B), und in jeder Zelle der Spalte, wo
die Grossbuchstaben erscheinen sollen (zum Beispiel in Spalte A) das
Makro "=Gross(b:b)" eintrage.
Wahrscheinlich ist eine Visual-Basic-Funktion sinnvoller?
Henriette van de Haar, Hamburg
Henriette van de Haar
2007-02-17 22:22:43 UTC
Permalink
Hallo Hajo,
Post by Hajo_Zi
Hallo Henriele,
in ein Modul folgendes Makro
Option Explicit
Sub Groß2()
'**************************************************
'* H. Ziplies *
'* 17.02.2007 *
'* http://Hajo-Excel.de/ *
'**************************************************
' alles in Großbuchstaben in Spalte A, in allen Tabellen
Dim WsTabelle As Worksheet
Dim RaZelle As Range
Dim LoLetzte As Long
Dim LoI As Long
Application.ScreenUpdating = False
For Each WsTabelle In Sheets
With WsTabelle
' unabhängig von Excelversion für Spalte A (1)
LoLetzte = IIf(IsEmpty(.Cells(Rows.Count, 1)),
.Cells(Rows.Count, 1).End(xlUp).Row, .Rows.Count)
For LoI = 1 To LoLetzte
.Cells(LoI, 1) = UCase(.Cells(LoI, 1))
Next LoI
End With
Next WsTabelle
Application.ScreenUpdating = True
End Sub
Starten über Extra, Makro.
Es hat wunderbar geklappt! Ich danke Dir!!!!!!!!!!!
Noch eine Frage. Welche Visual Basic - Funktion ist für die
Fettschreibung zuständig? Die Wörter sollen möglichst nicht nur gross-,
sondern auch fettgeschrieben werden. Ich habe in meiner
Visual-Basic-Hilfe bei den Funktionen gesucht, aber keine gefunden ...


Gruss,
Henriette
Post by Hajo_Zi
Gruß Hajo
MVP für Microsoft Excel
Betriebssystem Vista und Excel Version2007
http://Hajo-Excel.de/
Claus Busch
2007-02-17 22:44:12 UTC
Permalink
Hallo Henriette,
Post by Henriette van de Haar
Post by Hajo_Zi
in ein Modul folgendes Makro
Option Explicit
Sub Groß2()
'**************************************************
'* H. Ziplies *
'* 17.02.2007 *
'* http://Hajo-Excel.de/ *
'**************************************************
' alles in Großbuchstaben in Spalte A, in allen Tabellen
Dim WsTabelle As Worksheet
Dim RaZelle As Range
Dim LoLetzte As Long
Dim LoI As Long
Application.ScreenUpdating = False
For Each WsTabelle In Sheets
With WsTabelle
' unabhängig von Excelversion für Spalte A (1)
LoLetzte = IIf(IsEmpty(.Cells(Rows.Count, 1)),
.Cells(Rows.Count, 1).End(xlUp).Row, .Rows.Count)
For LoI = 1 To LoLetzte
.Cells(LoI, 1) = UCase(.Cells(LoI, 1))
.Cells(LoI, 1).Font.FontStyle = "Fett"
Post by Henriette van de Haar
Post by Hajo_Zi
Next LoI
End With
Next WsTabelle
Application.ScreenUpdating = True
End Sub
Starten über Extra, Makro.
Es hat wunderbar geklappt! Ich danke Dir!!!!!!!!!!!
Noch eine Frage. Welche Visual Basic - Funktion ist für die
Fettschreibung zuständig? Die Wörter sollen möglichst nicht nur gross-,
sondern auch fettgeschrieben werden. Ich habe in meiner
Visual-Basic-Hilfe bei den Funktionen gesucht, aber keine gefunden ...
füge in den Hajo's Code noch folgende Zeile ein (wie oben angezeigt):
.Cells(LoI, 1).Font.FontStyle = "Fett"
--
Mit freundlichen Grüssen
Claus Busch

Win XP Prof SP2; Office 2000 SP3
claus_busch(at)t-online.de
Henriette van de Haar
2007-02-17 23:04:36 UTC
Permalink
Post by Hajo_Zi
Hallo Henriette,
Post by Henriette van de Haar
Post by Hajo_Zi
in ein Modul folgendes Makro
Option Explicit
Sub Groß2()
'**************************************************
'* H. Ziplies *
'* 17.02.2007 *
'* http://Hajo-Excel.de/ *
'**************************************************
' alles in Großbuchstaben in Spalte A, in allen Tabellen
Dim WsTabelle As Worksheet
Dim RaZelle As Range
Dim LoLetzte As Long
Dim LoI As Long
Application.ScreenUpdating = False
For Each WsTabelle In Sheets
With WsTabelle
' unabhängig von Excelversion für Spalte A (1)
LoLetzte = IIf(IsEmpty(.Cells(Rows.Count, 1)),
.Cells(Rows.Count, 1).End(xlUp).Row, .Rows.Count)
For LoI = 1 To LoLetzte
.Cells(LoI, 1) = UCase(.Cells(LoI, 1))
.Cells(LoI, 1).Font.FontStyle = "Fett"
Post by Henriette van de Haar
Post by Hajo_Zi
Next LoI
End With
Next WsTabelle
Application.ScreenUpdating = True
End Sub
Starten über Extra, Makro.
Es hat wunderbar geklappt! Ich danke Dir!!!!!!!!!!!
Noch eine Frage. Welche Visual Basic - Funktion ist für die
Fettschreibung zuständig? Die Wörter sollen möglichst nicht nur gross-,
sondern auch fettgeschrieben werden. Ich habe in meiner
Visual-Basic-Hilfe bei den Funktionen gesucht, aber keine gefunden ...
.Cells(LoI, 1).Font.FontStyle = "Fett"
Danke, hat wunderbar geklappt!
Eberhard Funke
2007-02-17 19:08:29 UTC
Permalink
Post by Henriette van de Haar
Hallo alle,
weiss jemand, wie man den Text einer Spalte in Grossbuchstaben umwandelt?
Makrotechnisch scheint dies nur zu bewerkstelligen sein, indem ich die
Spalte kopiere (zum Beispiel nach B), und in jeder Zelle der Spalte, wo
die Grossbuchstaben erscheinen sollen (zum Beispiel in Spalte A) das
Makro "=Gross(b:b)" eintrage.
Wahrscheinlich ist eine Visual-Basic-Funktion sinnvoller?
Henriette van de Haar, Hamburg
Hallo Henriette,

das folgende Makro funktioniert für jede beliebige Spalte.
Voraussetzung: vor Start des Makro musst Du eine Zelle in der zu
bearbeitenden Spalte markieren!


Sub GrossBuchstaben()
Dim rngZelle As Range, rngBer As Range
Dim lngLZ As Long

lngLZ = Cells(65536, ActiveCell.Column).End(xlUp).Row
Set rngBer = Range(Cells(1, ActiveCell.Column), _
Cells(lngLZ, ActiveCell.Column))
For Each rngZelle In rngBer
If Not IsEmpty(rngZelle) Then
rngZelle.Value = UCase(rngZelle.Value)
Debug.Print rngZelle.Address
End If
Next
End Sub
--
Mit freundlichen Grüssen Eberhard
XP home XL 2000
Eberhard(punkt)W(punkt)Funke(at)t-online.de
Eberhard Funke
2007-02-17 19:12:39 UTC
Permalink
Am Sat, 17 Feb 2007 20:08:29 +0100 schrieb Eberhard Funke:

lösche bitte die Zeile:

Debug.Print rngZelle.Address

(diente nur zu Testzwecken)
--
Mit freundlichen Grüssen Eberhard
XP home XL 2000
Eberhard(punkt)W(punkt)Funke(at)t-online.de
Henriette van de Haar
2007-02-17 23:05:19 UTC
Permalink
Post by Hajo_Zi
Post by Henriette van de Haar
Hallo alle,
weiss jemand, wie man den Text einer Spalte in Grossbuchstaben umwandelt?
Makrotechnisch scheint dies nur zu bewerkstelligen sein, indem ich die
Spalte kopiere (zum Beispiel nach B), und in jeder Zelle der Spalte, wo
die Grossbuchstaben erscheinen sollen (zum Beispiel in Spalte A) das
Makro "=Gross(b:b)" eintrage.
Wahrscheinlich ist eine Visual-Basic-Funktion sinnvoller?
Henriette van de Haar, Hamburg
Hallo Henriette,
das folgende Makro funktioniert für jede beliebige Spalte.
Voraussetzung: vor Start des Makro musst Du eine Zelle in der zu
bearbeitenden Spalte markieren!
Sub GrossBuchstaben()
Dim rngZelle As Range, rngBer As Range
Dim lngLZ As Long
lngLZ = Cells(65536, ActiveCell.Column).End(xlUp).Row
Set rngBer = Range(Cells(1, ActiveCell.Column), _
Cells(lngLZ, ActiveCell.Column))
For Each rngZelle In rngBer
If Not IsEmpty(rngZelle) Then
rngZelle.Value = UCase(rngZelle.Value)
Debug.Print rngZelle.Address
End If
Next
End Sub
Danke, ich habe das Problem inzwischen gelöst!
Lesen Sie weiter auf narkive:
Loading...