Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Spaltenbreite ändern trotz Schutz

Forumthread: Spaltenbreite ändern trotz Schutz

Spaltenbreite ändern trotz Schutz
29.08.2005 16:07:46
Hugo
Hallo zusammen!
Ich hätte da noch mal wieder ein Problem:
Fällt jemandem eine schöne VBS-Zeile ein, sodass ich die Spaltenbreite der Zellen meines geschützten Arbeitsblatts einstellen kann?
Schönen Dank schon mal im Voraus
Hugo
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spaltenbreite ändern trotz Schutz
29.08.2005 16:11:16
Schützer
Schutz aufheben
Spaltenbreite ändern
Schutz setzen
ansonsten Makrorekorder anschmeissen
AW: Spaltenbreite ändern trotz Schutz
29.08.2005 16:11:35
Leo
Hi,
zwei Möglichkeiten, entweder Schutz per Code zeitweilig aufheben oder Blatt mit
UserInterfaceOnly schützen, dann können Makros ausgeführt werden.
mfg Leo
AW: Spaltenbreite ändern trotz Schutz
29.08.2005 16:22:36
Hugo
Besten Dank euch beiden für die schnelle Antwort!
Den UserInterfaceOnly hab ich schon drin. Genauergesagt sieht der Code bisher so aus:

Sub BlattSchutz()
Worksheets("Data").EnableOutlining = True
Worksheets("Data").Protect userinterfaceonly:=True
End Sub

Und jetzt hatte ich halt einen Befehl wie EnableOutlining gesucht - halt nur, um die Spaltenbreite einstellen zu können. Fällt da jemandem was ein? Sonst muss ich es halt umgehen.
Anzeige
AW: Columns("G:G").ColumnWidth = 22.29
29.08.2005 16:25:01
Schützer
oder Makrorekorder
AW: Spaltenbreite ändern trotz Schutz
29.08.2005 16:25:04
Leo
Hi,
wo ist denn dann das Problem? Du willst doch per Makro ändern, dann mach doch.
mfg Leo
AW: Spaltenbreite ändern trotz Schutz
29.08.2005 16:28:10
Hugo
Nee, ich will eben nicht per Makro die Spaltenbreite ändern, sondern nur irgendwie aktivieren, dass man die Spaltenbreite per Hand ändern kann, obwohl das File geschützt ist.
Anzeige
AW: Spaltenbreite ändern trotz Schutz
29.08.2005 16:42:07
Josef
Hallo Hugo!
Dann musst du halt die Schaltfläche (im Kontextnmenü der Spalte)
umfunktionieren!
Option Explicit

Sub changeControls()
Dim cb As CommandBar
Dim cbc As CommandBarControl
Dim cbb As CommandBarButton

resetControls

Set cb = Application.CommandBars("Column")

Set cbc = cb.FindControl(ID:=542)

cbc.Visible = False

Set cbb = cb.Controls.Add(msoControlButton, before:=cbc.Index)

With cbb
  .Caption = "Spaltenbreite..."
  .Style = msoButtonCaption
  .OnAction = "aktion"
End With

End Sub


Sub aktion()
Application.Dialogs(xlDialogColumnWidth).Show
End Sub


Sub resetControls()
Application.CommandBars("Column").Reset
End Sub


Du darfst nur nicht vergessen die Prozedur "resetControls" beim beenden
deiner Datei zu starten, um das Kontextmenü wiederherzustellen!
Gruß Sepp
P.S.: Rückmeldung nicht vergessen!


Anzeige
AW: Spaltenbreite ändern trotz Schutz
29.08.2005 16:45:59
Hugo
Hi Sepp!
Besten Dank für die ausführliche Antwort!! Ich mach jetzt allerdings erstmal Feierabend und werd das dann morgen mal ausprobieren. Bis dahin, schönen Abend noch!
der Hugo
AW: Spaltenbreite ändern trotz Schutz
30.08.2005 15:46:31
Hugo
Hi Sepp!
Jetzt kriegst du auch noch kurz deine Rückmeldung :-).
Also, funktioniert perfekt! Genau so etwas hatte ich mir vorgestellt! Besten Dank und schönen Gruß
der Hugo
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Spaltenbreite ändern trotz Schutz in Excel


Schritt-für-Schritt-Anleitung

Um die Spaltenbreite in einem geschützten Excel-Arbeitsblatt zu ändern, kannst Du folgende Schritte durchführen:

  1. Blattschutz aufheben: Du musst den Blattschutz temporär aufheben, um die Spaltenbreite ändern zu können. Dies kann manuell oder durch ein Makro geschehen.

  2. Spaltenbreite ändern: Gehe zu der Spalte, deren Breite Du ändern möchtest. Klicke mit der rechten Maustaste und wähle "Spaltenbreite..." aus dem Kontextmenü oder ziehe die Grenze der Spalte, um sie größer zu machen.

  3. Blattschutz wieder aktivieren: Nachdem Du die gewünschte Spaltenbreite eingestellt hast, aktiviere den Blattschutz erneut.

Alternativ kannst Du auch ein Makro verwenden, um die Spaltenbreite zu ändern, ohne den Schutz manuell aufzuheben.


Häufige Fehler und Lösungen

  • Fehler: Du kannst die Spaltenbreite nicht ändern, weil der Blattschutz aktiv ist.

    • Lösung: Hebe den Blattschutz auf, ändere die Spaltenbreite und aktiviere den Schutz erneut.
  • Fehler: Makros funktionieren nicht, wenn der Blattschutz aktiv ist.

    • Lösung: Stelle sicher, dass Du den Blattschutz mit UserInterfaceOnly schützt, damit Makros weiterhin ausgeführt werden können.

Alternative Methoden

  1. VBA-Code verwenden: Implementiere einen VBA-Code, der die Spaltenbreite ändert, während der Blattschutz aktiv ist. Hier ist ein Beispiel:

    Sub SpaltenbreiteAendern()
        Worksheets("Data").Protect UserInterfaceOnly:=True
        Columns("A:A").ColumnWidth = 20
    End Sub
  2. CommandBar anpassen: Du kannst die CommandBar anpassen, um eine Schaltfläche hinzuzufügen, die es Dir ermöglicht, die Spaltenbreite zu ändern, ohne den Blattschutz aufzuheben.


Praktische Beispiele

  • Beispiel 1: Um die Breite einer einzelnen Spalte zu ändern, kannst Du folgenden VBA-Code verwenden:

    Sub SpalteGroesserMachen()
        Worksheets("Daten").Columns("B:B").ColumnWidth = 25
    End Sub
  • Beispiel 2: Um die Spaltenbreite nur in einer bestimmten Zeile zu ändern, könntest Du den folgenden Code verwenden:

    Sub ZeilenbreiteAendern()
        With Worksheets("Data").Rows("5:5")
            .ColumnWidth = 15
        End With
    End Sub

Tipps für Profis

  • Wenn Du oft die Spaltenbreite änderst, während der Schutz aktiv ist, erwäge, ein Makro zu erstellen, das diesen Prozess automatisiert.
  • Du kannst die Spaltenbreite auch in einer Excel-Tabelle ändern, um die Übersichtlichkeit zu verbessern und die Lesbarkeit zu erhöhen.
  • Denke daran, die Einstellungen für die Zellengröße zu sperren, wenn Du nicht möchtest, dass die Benutzer die Größe der Zellen ändern können.

FAQ: Häufige Fragen

1. Wie kann ich die Spaltenbreite ändern, ohne den Blattschutz aufzuheben? Du kannst VBA verwenden, um die Spaltenbreite zu ändern, während der Blattschutz aktiv bleibt.

2. Was bedeutet UserInterfaceOnly beim Schutz von Arbeitsblättern? Dieser Schutz ermöglicht es Makros, Änderungen an Zellen vorzunehmen, während die Benutzeroberfläche weiterhin geschützt bleibt.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige