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

InputBox - DisplayAlerts

InputBox - DisplayAlerts
08.11.2004 07:02:58
Erich
Hallo EXCEL-Freunde,
habe die letzten Tage vom Forum nachstehende Lösung erhalten. Dabei geht es
darum, individuell Blätter per VBA auszublenden. Jetzt habe ich ein Problem. Wenn ich die Zeile
''Abfrage unterdrücken
'Application.DisplayAlerts = False
so belasse (= deaktiviert), dann kann ich mit der InputBox die notwendigen
Zellen auswählen.
Wenn ich aber die Zeile aktiviere, dann kann ich mit der
InputBox nicht mehr auswählen:
Option Explicit
Sub blätteraus()
'Inhaltsverzeichnis aller Tabellenblätter
Dim blatt As Object
Dim zeile As Double
Dim NewSheet As Worksheet
Dim i As Integer
Dim myRange As Range
Dim myC As Range
zeile = 3
'Fehlerhandling
On Error Resume Next
''Abfrage unterdrücken
'Application.DisplayAlerts = False
'Application.ScreenUpdating = False
'Sheet Inhaltsverzeichnis auf jeden Fall löschen
Sheets("Inhaltsverzeichnis2").Delete
'Neues Tabellenblatt mit dem Namen Inhaltsverzeichnis hinzufügen
Set NewSheet = Worksheets.Add
NewSheet.Name = "Inhaltsverzeichnis2"
Sheets("Inhaltsverzeichnis2").Move Before:=Sheets(1) ' = Tabellenblatt als erstes
'Überschrift Einfügen und formatieren
With Sheets("Inhaltsverzeichnis2").Range("A1")
.Value = "Inhaltsverzeichnis"
End With

With Cells(2, 1)
.Value = "sortiert nach Blatt-Nr."
End With
'Laufende Blattnummerierung + Blattname einfügen
For Each blatt In Sheets
Sheets("Inhaltsverzeichnis2").Cells(zeile, 1).Value = "Blatt " & zeile - 2
Sheets("Inhaltsverzeichnis2").Cells(zeile, 2).Value = blatt.Name
zeile = zeile + 1
Next blatt
ActiveSheet.Columns("B:B").EntireColumn.AutoFit
ActiveWindow.DisplayGridlines = False
Range("A3").Select
ActiveWindow.FreezePanes = True
Cells(1, 4).Select
On Error Resume Next
Set myRange = Application.InputBox("Wählen Sie die Tabellenblätter", "Nachbearbeitung", Type:=8)
If myRange Is Nothing Then Exit Sub
For Each myC In myRange
Sheets(myC.Value).Visible = False
Next
'Ursprungszustand wieder herstellen
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

Muss ich an der Art der InputBox was ändern?
Besten Dank für eine Hilfe!
mfg
Erich

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: InputBox - DisplayAlerts
RALF
Moin,
ändere den code-Abschnitt
For Each myC In myrange
Sheets(myC.Value).Visible = False
Next
wie folgt ab:
For Each myC In myrange
Sheets(Sheets(1).Cells(myC.Row, 2)).Visible = False
Next
dann sollte das Problem gegessen sein.
Gruß RALF
AW: InputBox - DisplayAlerts
Erich
Hallo Ralf,
danke; damit geht es leider nicht. Ich habe aber jetzt die Function DisplayAlerts
aktiviert und die Funktion ScreenUpdating deaktiviert - jetzt funktionierts!
Besten Dank!!
mfg
Erich
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige