Anzeige
Archiv - Navigation
1900to1904
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

ab x.ten Tabellenblatt abfragen

ab x.ten Tabellenblatt abfragen
17.10.2022 10:40:49
Günther
Hallo Helper,
mal wieder ein Problem, zu dem Ihr vielleicht eine elegante Lösung habt.
Ich habe rd. 30 Tabellenblätter. Aber erst ab Tabelle 5 soll u.a. With-Prozedur ausgeführt werden. Da diese Arbeit ein paar Sekunden benötigt, wäre noch ein Fortschrittsbalken super.

Private Sub CommandButton7_Click()
Sheets("!Deckblatt").Select
Dim kd As String
kd = ThisWorkbook.Worksheets("!Deckblatt").Range("D7")
kd_path = "C:\temp\test\"
With Worksheets("Tabellenblatt x").PageSetup
.LeftHeaderPicture.FileName = kd_path & kd & "\logo\logo.jpg"
.LeftHeader = "&G"
Worksheets("Tabellenblatt x").PageSetup.LeftHeaderPicture.LockAspectRatio = False
Worksheets("Tabellenblatt x").PageSetup.LeftHeaderPicture.Height = 30
Worksheets("Tabellenblatt x").PageSetup.LeftHeaderPicture.Width = 50
End With
With Worksheets("Tabellenblatt y").PageSetup
.LeftHeaderPicture.FileName = kd_path & kd & "\logo\logo.jpg"
.LeftHeader = "&G"
Worksheets("Tabellenblatt y").PageSetup.LeftHeaderPicture.LockAspectRatio = False
Worksheets("Tabellenblatt y").PageSetup.LeftHeaderPicture.Height = 30
Worksheets("Tabellenblatt y").PageSetup.LeftHeaderPicture.Width = 50
End With
' und so weiter bis Tabelle 30
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ab x.ten Tabellenblatt abfragen
17.10.2022 10:56:38
migre
Hallo!
Grds. zB so:

Private Sub CommandButton7_Click()
Const kd_path As String = "C:\temp\test\"
Dim Wb As Workbook: Set Wb = ThisWorkbook
Dim wsDeckblatt As Worksheet: Set wsDeckblatt = Wb.Worksheets("!Deckblatt")
Dim Ws As Worksheet, i As Long, kd As String
Application.ScreenUpdating = False
kd = wsDeckblatt.Range("D7").Value
For i = 5 To Wb.Worksheets.Count
Set Ws = Wb.Worksheets(i)
With Ws.PageSetup
.LeftHeaderPicture.Filename = kd_path & kd & "\logo\logo.jpg"
.LeftHeaderPicture.LockAspectRatio = msoCTrue
.LeftHeaderPicture.Height = 30: .LeftHeaderPicture.Width = 50
.LeftHeader = "&G"
End With
Set Ws = Nothing
Next i
Application.ScreenUpdating = True
Set Wb = Nothing: Set wsDeckblatt = Nothing
End Sub
Ob das schon genau ist, was Du brauchst, bezweifle ich, denn dafür fehlt Kontext in Deiner Anfrage. Probier's aus,
LG Michael
Anzeige
AW: ab x.ten Tabellenblatt abfragen
17.10.2022 11:52:32
Günther
Besten Dank mal an euch.
Bei mir kommt allerdings der Laufzeitfehler 5 "Ungültiger Prozeduraufruf oder ungültiges Argument".
Was muss ich noch tun?
AW: ab x.ten Tabellenblatt abfragen
17.10.2022 12:51:30
Günther
Hallo Leute,
ich habe es hinbekommen. Jetzt funktioniert es.
Besten Dank. Tolles Sache
Grüße
Günther
AW: ab x.ten Tabellenblatt abfragen
17.10.2022 11:26:10
Daniel
HI
schleife im Prinzip so wie von Migre gezeigt.
wenn man an den Printeinstellungen rumfummelt, dann braucht das relativ lange weil Excel dann jedesmal mit dem Drucker Kaffekränzchen hält.
man kann das ganze beschleunigen, wenn man am Anfang den Befehl: Application.PrintCommunication = False ausführt und am Ende dann wieder Application.PrintCommunication = True
probiers mal aus, vermutlich hat sich dann das Thema mit dem Fortschrittsbalken erledigt weils schnell genug ist.
Wenn nicht, würde ich hier der Einfachheit halber keinen Fortschrittsbalken anzeigen, sondern den Fortschritt in der Statusleiste anzeigen. Ist zwar Optisch nicht ganz so schön, aber Excel macht das auch und daher sollte es dem Anwender nicht unbekannt sein.
hier mal der Code von Migre entsprechend abgewandelt:

Private Sub CommandButton7_Click()
Const kd_path As String = "C:\temp\test\"
Dim Wb As Workbook: Set Wb = ThisWorkbook
Dim wsDeckblatt As Worksheet: Set wsDeckblatt = Wb.Worksheets("!Deckblatt")
Dim Ws As Worksheet, i As Long, kd As String
Application.PrintCommunication = False
kd = wsDeckblatt.Range("D7").Value
For i = 5 To Wb.Worksheets.Count
Set Ws = Wb.Worksheets(i)
Application.Statusbar = "In Arbeit Blatt Nr: " & i - 4 & " von " & wb.Worksheets.count - 4 & " (" & Ws.Name & ")"
With Ws.PageSetup
.LeftHeaderPicture.Filename = kd_path & kd & "\logo\logo.jpg"
.LeftHeaderPicture.LockAspectRatio = msoCTrue
.LeftHeaderPicture.Height = 30: .LeftHeaderPicture.Width = 50
.LeftHeader = "&G"
End With
Set Ws = Nothing
Next i
Application.PrintCommunication = True
Application.Statusbar = False
Set Wb = Nothing: Set wsDeckblatt = Nothing
End Sub
Gruß Daniel
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige