Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
916to920
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
916to920
916to920
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Einträge bei Mehrfachauswahl verhindern

Einträge bei Mehrfachauswahl verhindern
18.10.2007 22:57:00
Peter
Guten Abend
Jemand vom Forum hat mir mal diesen Code geliefert. Damit wird verhindert, dass bei einer Mehrfachauswahl von Tabellen eine Änderung erfolgen kann. Ein solcher Schutz ist bei verschiedenen Dateien für mich hilfreich.
Nun möchte ich gerne, dass wenn eine Mehrfachauswahl vorliegt und eine Eingabe erfolgt auch noch eine msgbox erscheint, z.B. "Eintrag ignoriert, da mehrere Tabellen ausgewählt".
Wenn ich diesen Code unten vor ExitSub einfüge, kommt die Mitteilung jedoch soviele Male, wie Tabellen ausgewählt sind.
Wie kann der Code angepasst werden, dass die Meldung bei einer Eingabe nur einmal erscheint, auch wenn 20 Tabellen gleichzeitig ausgewählt sind?
Danke für jede Unterstützung.
Peter
Option Explicit
Dim bUndo As Boolean

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
If Sh.Name  ActiveSheet.Name Then
With Application
.EnableEvents = False
If Not bUndo Then .Undo
.EnableEvents = True
End With
bUndo = True
Exit Sub
End If
bUndo = False
End Sub


6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
"Änderungen bei Mehrfachauswahl verboten !"
18.10.2007 23:28:00
NoNet
Hallo Peter,
so geht's :
Private Sub Workbook_SheetChange(ByVal Sh As ObjectByVal Target As Range)
On Error Resume Next
If Sh.Name <> ActiveSheet.Name Then
    With Application
        .EnableEvents = False
        If Not bUndo Then
            .Undo
            MsgBox "Änderungen bei Mehrfachauswahl verboten !"
        End If
        .EnableEvents = True
    End With
    bUndo = True
    Exit Sub
End If
bUndo = False
End Sub

Gruß, NoNet

Anzeige
AW: Einträge bei Mehrfachauswahl verhindern
18.10.2007 23:29:53
Matthias
Hallo Peter,
so:

Dim bUndo As Boolean
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
If Sh.Name  ActiveSheet.Name Then
With Application
.EnableEvents = False
If Not bUndo Then
.Undo
MsgBox "Eintrag ignoriert, da mehrere Tabellen ausgewählt"
End If
.EnableEvents = True
End With
bUndo = True
Exit Sub
End If
bUndo = False
End Sub


Gruß Matthias

AW: Einträge bei Mehrfachauswahl verhindern
19.10.2007 09:34:00
Peter
Hallo Matthias
Genau so habe ich es mir vorgestellt.
Vielen Dank und freundlicher Gruss, Peter

AW: ein Dank an NoNet...
19.10.2007 14:00:54
Matthias
...wäre aber auch angebracht.
Gruß Matthias

Anzeige
;-) Dachte ich mir zwar auch, aber ich kann....
19.10.2007 14:09:09
NoNet
Hallo Matthias,
ich kann damit leben, zumal wir ja die gleiche Lösung (nur unterschiedlichen MsgBox-Text) gepostet haben.
Die Hauptsache ist, das Problem ist gelöst :-)
Schönen Tag noch,
Gruß NoNet

AW: ;-) Dachte ich mir zwar auch, aber ich kann....
19.10.2007 15:22:37
Peter
Hallo NoNet
Sorry, dass ich mich bei dir nicht bedankt habe. Da ich heute morgen nur ganz kurz Zeit hatte, meine Mails zu sichten, habe ich nur dasjenige von Matthias gesehen und erst jetzt dasjenige von dir, weshalb der Dank nur an Matthias ging.
So bedanke ich mich jetzt auch noch bei dir - ich finde es genial, immer wieder wertvolle Hilfestellungen zu erhalten.
Gruss, Peter
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige