Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1948to1952
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro in Spalte anwenden

Makro in Spalte anwenden
25.10.2023 12:57:03
Björn G
Hallo,

Ich have eine Datei mit mehreren Drop Down Menüs und möchte mit einem Makro das Einfügen oder Überschreiben der Dropdowns in verschiedenen Spalten verhindern. In den restlichen Spalten soll das Einfügen noch möglich sein.

Habe ein Makro gefunden, mit welchem ich für die ganze Datei dies unterbinden kann, bringt mich leider nur nicht weiter.

Kann mir hier jemand helfen?

Grüße Björn

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

Betreff
Datum
Anwender
Anzeige
AW: Makro in Spalte anwenden
25.10.2023 13:15:26
Oberschlumpf
Hi Björn,

if you can per Upload eine Bsp-Datei mit Bsp-Daten zeigen, dann könnte Hilfe für dich einfacher sein.
Zeig bitte gern auch den Code, der sich auf die ganze Datei bezieht. Ich bin sicher, der Code lässt sich anpassen.

Ciao
Thorsten
AW: Makro in Spalte anwenden
25.10.2023 17:57:22
bigmayo
Moin Björn,

Um das Einfügen oder Überschreiben von Dropdown-Listen in bestimmten Spalten zu verhindern, kannst du VBA (Visual Basic for Applications) verwenden, um entsprechende Ereignisprozeduren für diese Spalten zu erstellen. Hier ist eine grundlegende Anleitung, wie du das machen könntest:

Identifiziere die betroffenen Spalten:
Notiere dir die Spaltennummern oder die Spaltenbuchstaben, in denen das Einfügen oder Überschreiben von Dropdown-Listen verhindert werden soll.
Öffne den Visual Basic for Applications-Editor:
Drücke Alt + F11, um den VBA-Editor in Excel zu öffnen.
Wähle das betreffende Tabellenblatt:
In der Projektleiste (normalerweise links oben im VBA-Editor) findest du dein Tabellenblatt unter "VBAProject (DeineDatei.xlsx)".
Erstelle eine Worksheet_Change-Prozedur für die betroffenen Spalten:
Doppelklicke auf das Tabellenblatt, in dem du die Dropdown-Verhinderung aktivieren möchtest.
Füge den folgenden Code in das Code-Fenster ein und passe die Spaltennummern oder -buchstaben an:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim AffectedColumns As String
Dim Cell As Range

' Hier die betroffenen Spalten eintragen, z.B., Spalte A und B
AffectedColumns = "A:B"

' Prüfen, ob die geänderte Zelle in den betroffenen Spalten liegt
If Not Intersect(Target, Columns(AffectedColumns)) Is Nothing Then
Application.EnableEvents = False
Target.ClearContents
Application.EnableEvents = True
End If
End Sub

Dieser Code überwacht die Änderungen in den festgelegten Spalten (hier "A:B"). Wenn eine Änderung in diesen Spalten festgestellt wird, wird der Inhalt der geänderten Zelle gelöscht, und das Einfügen oder Überschreiben der Dropdown-Listen wird somit verhindert.
Speichern und schließen:
Speichere das Excel-Dokument und schließe den VBA-Editor.
Jetzt sollten Dropdown-Listen in den festgelegten Spalten nicht mehr eingefügt oder überschrieben werden können, während sie in den übrigen Spalten weiterhin verfügbar sind. Denke daran, die Spalten in der Variablen AffectedColumns gemäß deinen Anforderungen anzupassen.

Gruß
Anzeige
AW: Makro in Spalte anwenden
25.10.2023 19:05:03
Piet
Hallo

es geht noch einfacher, und ganz ohne Makro Überwachung. Mit ScrollArea im Eigenschaftsfenster der Tabelle.
Setzte alle DropDown die NICHT überschrieben werden sollen in einen Spaltenblock der NICHT mehr zugänglich ist.
Die andern Spalten, die frei bleiben sollen, notierst du als Range im ScrollArea im Eignschaftsfenster. z.B. so "B:C"
Geht auch als echter Rangebereich, z.B. als ScrollArea "B2:C100" - Der Cursor kann nur darauf zugreifen!

mfg Piet

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige