Per VBA die Zeilenhöhe optimieren
Ein kleine Frage zum Thema Formatierung...
Ich erstelle ein Art von Protokoll... In diesem werden verschiedene Informationen per Userform eingegeben... Nun passiert es, daß ein Eintrag in einer Zelle nicht reinpasst. die Zelle habe ich bereits mit dem Zusazt "Zeilenumbruch" versehen. Leider ist aber trotzdem nur die erste zeile lesbar. Da ich nun die Einträge per Userform eintrage, würde ich das modul gerne um einen befehl wie "passe zeilehöhe automatisch an" ergänzen... Wie würde dieser aussehen?
Ferner würde ich auch gerne bei jedem eintrag einzelne zellen der dann hinzugefügten zeile schützen/sperren (und eventuel per doppelklick wieder temporär beschreibbar machen)... Hat jemand hier ein idee wie...?
PS: freue mich meine mittlerweile gesammelten module bald hier publizieren zu können...
Ich erstelle ein Art von Protokoll... In diesem werden verschiedene Informationen per Userform eingegeben... Nun passiert es, daß ein Eintrag in einer Zelle nicht reinpasst. die Zelle habe ich bereits mit dem Zusazt "Zeilenumbruch" versehen. Leider ist aber trotzdem nur die erste zeile lesbar. Da ich nun die Einträge per Userform eintrage, würde ich das modul gerne um einen befehl wie "passe zeilehöhe automatisch an" ergänzen... Wie würde dieser aussehen?
Ferner würde ich auch gerne bei jedem eintrag einzelne zellen der dann hinzugefügten zeile schützen/sperren (und eventuel per doppelklick wieder temporär beschreibbar machen)... Hat jemand hier ein idee wie...?
PS: freue mich meine mittlerweile gesammelten module bald hier publizieren zu können...
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 131224
Url: https://administrator.de/forum/per-vba-die-zeilenhoehe-optimieren-131224.html
Ausgedruckt am: 24.12.2024 um 00:12 Uhr
14 Kommentare
Neuester Kommentar
Um die funktion für die Zellen höhe zu bewerkstelligen kannst du einfach ein Makro aufnehmen und die dortigen Befehle nutzen.
Diese Methode ist zwar nicht die sauberste jedoch die schnellst.
Zum Zellen sperren hab ich ein ähnliches Makro welches momentan für Admins die gesamte Fläche entsperrt, für User die nur einen bestimmten Teil entsperrt und für Personen ohne Login die Mappe einfach schließt. Fallste interesse hast meld dich bitte mal per PM bei mir.
Das Script ist noch in Bearbeitung weswegen ich nur sehr ungerne ein halbfertiges Script hier poste.
Diese Methode ist zwar nicht die sauberste jedoch die schnellst.
Zum Zellen sperren hab ich ein ähnliches Makro welches momentan für Admins die gesamte Fläche entsperrt, für User die nur einen bestimmten Teil entsperrt und für Personen ohne Login die Mappe einfach schließt. Fallste interesse hast meld dich bitte mal per PM bei mir.
Das Script ist noch in Bearbeitung weswegen ich nur sehr ungerne ein halbfertiges Script hier poste.
- Autofit * Passt die Höhe einer Zeile an die eingetragene Range an
Sheets("Eingabe").Range("b3").Rows.AutoFit
- Protection * lässt sich noch verbessern
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
ActiveSheet.Protect
ActiveSheet.Protection.AllowEditRanges.Add _
Title:="Titel2", _
Range:=Range("M11:S24")
End Sub
über die beiden Cells...
beachte bitte, dass in diesem Format die Spalten numerisch angegeben werden. So entspricht
Immer beide Cell-Werte ändern!
4
ist die Spalte (Column), i
die Zeile (Row).Für autofit muss ja die Zeile angegeben sein, deswegen .Rows
. Da wir aber mehrere Zeilen durchlaufen wollen, ändert die schleife immer den index der Zeilebeachte bitte, dass in diesem Format die Spalten numerisch angegeben werden. So entspricht
4
der spalte D.Immer beide Cell-Werte ändern!
Zitat von @TheEternalPhenom:
Mit noch einer weiteren Schleife kann man das ganze soweit umstellen, dass alle Zellen einer Tabelle angesteuert werden. Hier
sollte man jedoch auf passen welches Office man benutzt.
Mit noch einer weiteren Schleife kann man das ganze soweit umstellen, dass alle Zellen einer Tabelle angesteuert werden. Hier
sollte man jedoch auf passen welches Office man benutzt.
erm... wozu? es reicht, EINE zelle einer spalte anzusteuern, da die zellen rechts und links daneben sowieso die gleiche höhe annehmen