Conrad möchte die „Small Caps“ -Funktion von Word in Excel nachahmen. Die einzige Möglichkeit, die er sich vorstellen kann, besteht darin, ein Makro zu entwickeln, das alle Zeichen in einer Zelle durchläuft. Wenn das Zeichen in Kleinbuchstaben und 11 pt geschrieben ist, sollte das Makro das Zeichen in Großbuchstaben von 9 pt ändern.

Wenn das Zeichen in Großbuchstaben geschrieben ist (oder kein Buchstabe), sollte es nicht betroffen sein. Das Problem ist, dass Conrad nicht weiß, wie er die Formatierung einzelner Zeichen in der Zelle auf die beschriebene Weise beeinflussen kann.

Wenn Sie ein Makro verwenden, um nur bestimmte Zeichen in der Zelle zu beeinflussen, sollten Sie berücksichtigen, dass jede Zelle über eine eigene Zeichensammlung verfügt, auf die zugegriffen und die geändert werden kann. Jedes Element in der Sammlung repräsentiert erwartungsgemäß ein einzelnes Zeichen in der Zelle.

Auf diese Weise können wir ein Makro zusammenstellen, das untersucht, was sich derzeit in der Zelle befindet. Wenn das Zeichen derzeit in Kleinbuchstaben geschrieben ist, konvertieren Sie nur dieses Zeichen in Großbuchstaben und reduzieren Sie die Schriftgröße dieses Zeichens.

Sub SmallCaps()

Dim rCell As Range     Dim sWords As String     Dim sCharacter As String     Dim x As Long

'go through each cell in selection     For Each rCell In Selection         'Don't want to work on formulas         If Not rCell.HasFormula Then             sWords = rCell.Value 'Get the cell contents             For x = 1 To Len(sWords) 'Act on each letter                 sCharacter = Mid(sWords, x, 1)

If sCharacter >= "a" And sCharacter <= "z" Then                     'sCharacter is a lowercase letter                     With rCell.Characters(Start:=x, Length:=1)

'Decrease the font size by 2                         .Font.Size = .Font.Size - 2                         'Make character uppercase                         .Text = UCase(sCharacter)

End With                 End If             Next         End If     Next End Sub

Dieses Makro arbeitet an allen Zellen, die beim Ausführen ausgewählt werden.

Es wird überprüft, ob die Zelle keine Formel enthält (Formeln werden übersprungen), und anschließend werden Kleinbuchstaben in der Zelle geändert.

Die Verwendung eines solchen Makros hat Nachteile, die Sie kennen sollten. Der größte Nachteil ist, dass es tatsächlich verändert, was sich in den Zellen befindet. Wenn dies erledigt ist, enthalten die Zellen den gesamten Großbuchstaben, obwohl die Formatierung dazu führen kann, dass er wie Kapitälchen aussieht. Dies bedeutet, dass Sie möglicherweise Probleme haben, wenn Sie das Makro später ein zweites Mal ausführen, und die Korrekturwerkzeuge von Excel (wie die Rechtschreibprüfung) nicht für Wörter funktionieren, die alle in Großbuchstaben geschrieben sind. (Excel kann jedoch so konfiguriert werden, dass solche Wörter weiterhin auf Rechtschreibprüfung überprüft werden.)

Aufgrund der Nachteile möchten Sie möglicherweise einen völlig anderen Ansatz wählen: Ändern Sie die Schriftart, die Sie für die Zellen verwenden, in denen Sie Kapitälchen verwenden möchten. Wenn Sie im Internet nach „Small Caps-Schriftarten“ (ohne Anführungszeichen) suchen, sollten Sie in der Lage sein, viele Kandidaten zu finden, von denen eine gute Anzahl kostenlos verfügbar ist. Hier ist eine Seite, die Ihnen vielleicht gefällt:

https://www.fontsquirrel.com/fonts/list/tag/small%20caps

Laden Sie einfach die gewünschte Schriftart herunter (von dieser oder einer anderen seriösen Quelle) und installieren Sie sie auf Ihrem System. Wenn Sie Excel neu starten, sollte die Schriftart zum Formatieren von Zellen verfügbar sein. Zellen, die für die Verwendung einer solchen Schriftart formatiert sind, zeigen Text als Kapitälchen an, obwohl der tatsächliche Zelleninhalt eine Mischung aus Groß- und Kleinbuchstaben ist.

ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.

Dieser Tipp (653) gilt für Microsoft Excel 2007, 2010, 2013 und 2016.