ich habe ein problem ich möchte aus einem tabellenblat von einer spalte die breite auslesen lassen und in ein anderes tabellenblatt in eine zelle reinschreiben lassen.
wenn es geht mit VBA könnt ihr mir da helfen?
| A | B | C | D | E | F | |
| 1 | 17,43 | 5,14 | 7,29 | 14,57 | 7,29 | 12,29 |
| Formeln der Tabelle | ||||||||||||||
|
| A | B | C | D | E | F | |
| 1 | Test | Test | Test | Test | Test | Test |
Um die Spaltenbreite in Excel mit VBA auszulesen und in eine andere Zelle zu schreiben, folge diesen Schritten:
Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.
Füge den folgenden VBA-Code in das Modul ein:
Option Explicit
Public Function ColWidth(Target As Range) As Double
ColWidth = Target.ColumnWidth
End Function
Schließe den VBA-Editor und kehre zu Excel zurück.
Um die Spaltenbreite anzuzeigen, verwende in einer Zelle die Formel =ColWidth(A1), wobei A1 die Zelle ist, deren Spaltenbreite du auslesen möchtest.
Fehler: "#NAME?" in der Formel
Fehler: Funktion gibt immer 0 zurück
Wenn du keine VBA-Lösungen verwenden möchtest, kannst du die Spaltenbreite auch manuell ermitteln:
Angenommen, du möchtest die Spaltenbreite von Spalte B in Zelle D1 anzeigen:
=ColWidth(B1).Wenn du die Breite mehrerer Spalten gleichzeitig abfragen möchtest, kannst du dies durch entsprechende Anpassungen in den Zellen tun.
ColWidth in Kombination mit anderen Berechnungen nutzen, um dynamische Anpassungen vorzunehmen.1. Wie kann ich die Höhe von Zeilen ebenfalls auslesen?
Du kannst eine ähnliche Funktion für die Zeilenhöhe erstellen, indem du Target.RowHeight anstelle von Target.ColumnWidth verwendest.
2. Funktioniert dies in allen Excel-Versionen? Ja, die beschriebenen Methoden sind in den meisten modernen Excel-Versionen verfügbar, solange du Zugriff auf den VBA-Editor hast.