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

VBA: Schriftgröße aller ListBoxen ändern

Forumthread: VBA: Schriftgröße aller ListBoxen ändern

VBA: Schriftgröße aller ListBoxen ändern
25.06.2013 18:48:54
Bernd
Hallo zusammen,
gibt es ein Makro, welches alle Schriften/Größe aller Userform ListBoxen auf einmal ändert.
Wäre für eure Hilfe sehr dankbar.
Gruß
Bernd

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: Schriftgröße aller ListBoxen ändern
25.06.2013 19:24:29
Uduuh
Hallo,
am einfachsten zur Laufzeit.
z.B.
Private Sub UserForm_Activate()
Dim ctl As Control
For Each ctl In Controls
If TypeName(ctl) = "ListBox" Then
ctl.Font.Size = 10
End If
Next
End Sub
Gruß aus’m Pott
Udo

Anzeige
Designer
25.06.2013 19:37:13
ransi
Hallo Bernd
Wie das zur LAufzeit geht hat dir Udo ja gezeigt.
So gehts zur Entwicklungszeit:
' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit


Public Sub machs()
    Dim objVBcomp As Object
    Dim myCtrl As MSForms.Control
    Set objVBcomp = Application.VBE.ActiveVBProject.VBComponents("Userform1")
    For Each myCtrl In objVBcomp.designer.Controls
        If TypeOf myCtrl Is MSForms.ListBox Then
            myCtrl.Font.Size = 10
        End If
    Next
End Sub


ransi

Anzeige
@ Udo & ransi - Danke passt ! owT
25.06.2013 23:42:45
Bernd
.
;
Anzeige
Anzeige

Infobox / Tutorial

Schriftgröße aller ListBoxen in Excel VBA ändern


Schritt-für-Schritt-Anleitung

Um die Schriftgröße aller ListBoxen in einer UserForm zu ändern, kannst Du VBA (Visual Basic for Applications) verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne den Visual Basic for Applications-Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Wähle die UserForm aus:

    • Klicke im Projektfenster auf die UserForm, in der sich die ListBoxen befinden.
  3. Füge den folgenden Code in das Codefenster ein:

    Private Sub UserForm_Activate()
       Dim ctl As Control
       For Each ctl In Controls
           If TypeName(ctl) = "ListBox" Then
               ctl.Font.Size = 10 ' Ändere die Schriftgröße hier
           End If
       Next ctl
    End Sub
  4. Schließe den VBA-Editor und teste die UserForm, um sicherzustellen, dass die Schriftgröße der ListBoxen nun wie gewünscht angezeigt wird.


Häufige Fehler und Lösungen

  • Fehler: "Objektvariable oder With-Blockvariable nicht festgelegt"

    • Lösung: Stelle sicher, dass Du die korrekte UserForm aktivierst und dass ListBoxen tatsächlich vorhanden sind.
  • Fehler: Schriftgröße ändert sich nicht

    • Lösung: Überprüfe den Code auf Tippfehler und stelle sicher, dass die UserForm beim Testen aktiv ist.

Alternative Methoden

Es gibt auch andere Methoden, um die Schriftgröße von ListBoxen zu ändern:

  • Entwicklungszeit: Du kannst die Schriftgröße direkt im Designer ändern, indem Du die ListBox auswählst und die Schriftgröße in den Eigenschaften anpasst.

  • Modul verwenden: Nutze ein Modul, um die Schriftgröße für alle ListBoxen in allen UserForms zu ändern:

    Public Sub machs()
       Dim objVBcomp As Object
       Dim myCtrl As MSForms.Control
       Set objVBcomp = Application.VBE.ActiveVBProject.VBComponents("Userform1")
       For Each myCtrl In objVBcomp.Designer.Controls
           If TypeOf myCtrl Is MSForms.ListBox Then
               myCtrl.Font.Size = 10 ' Schriftgröße anpassen
           End If
       Next myCtrl
    End Sub

Praktische Beispiele

Hier sind einige praktische Beispiele, wie Du die Schriftgröße der ListBoxen ändern kannst:

  1. Für eine bestimmte UserForm:

    • Verwende den Code aus der Schritt-für-Schritt-Anleitung, um nur die ListBoxen dieser UserForm zu ändern.
  2. Für mehrere UserForms:

    • Erstelle eine Subroutine, die durch alle UserForms iteriert und die Schriftgröße der ListBoxen anpasst.

Tipps für Profis

  • Verwende Konstanten: Anstatt die Schriftgröße direkt im Code zu setzen, definiere eine Konstante am Anfang deines Moduls, um die Anpassung zu erleichtern.

  • Error Handling: Füge Fehlerbehandlungsroutinen hinzu, um Probleme während der Ausführung zu vermeiden.

  • Testen: Teste immer Deine Änderungen in einer Kopie der Datei, um unerwünschte Effekte zu vermeiden.


FAQ: Häufige Fragen

1. Wie ändere ich die Schriftgröße für alle ListBoxen in allen UserForms?
Verwende eine Subroutine, die durch alle UserForms iteriert und die Schriftgröße anpasst.

2. Kann ich die Schriftgröße in der Entwicklungszeit ändern?
Ja, Du kannst die Schriftgröße direkt im Eigenschaftenfenster der ListBox im VBA-Designer ändern.

3. Funktioniert dieser Code in Excel 2016 und später?
Ja, dieser VBA-Code sollte in Excel 2016 und späteren Versionen funktionieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige