Um in Excel VBA die farbig markierten Reiter (Arbeitsblätter) auszuwählen, die Druckeinstellungen so zu ändern, dass sie auf eine Seite passen, und anschließend eine PDF zu erstel... [mehr]
Um in Excel VBA die farbig markierten Reiter (Arbeitsblätter) auszuwählen, die Druckeinstellungen so zu ändern, dass sie auf eine Seite passen, und anschließend eine PDF-Datei zu erstellen, kannst du den folgenden VBA-Code verwenden: ```vba Sub ExportColoredSheetsToPDF() Dim ws As Worksheet Dim pdfPath As String Dim coloredSheets As Collection Set coloredSheets = New Collection ' Pfad für die PDF-Datei festlegen pdfPath = ThisWorkbook.Path & "\ColoredSheets.pdf" ' Durchlaufe alle Arbeitsblätter und füge die farbig markierten hinzu For Each ws In ThisWorkbook.Worksheets If ws.Tab.Color <> xlNone Then coloredSheets.Add ws End If Next ws ' Wenn keine farbig markierten Blätter gefunden wurden If coloredSheets.Count = 0 Then MsgBox "Es wurden keine farbig markierten Blätter gefunden." Exit Sub End If ' Druckeinstellungen für jedes farbig markierte Blatt anpassen For Each ws In coloredSheets With ws.PageSetup .FitToPagesWide = 1 .FitToPagesTall = 1 End With Next ws ' PDF erstellen Dim sheetArray() As String ReDim sheetArray(1 To coloredSheets.Count) For i = 1 To coloredSheets.Count sheetArray(i) = coloredSheets(i).Name Next i ThisWorkbook.Sheets(sheetArray).Select ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=pdfPath, Quality:=xlQualityStandard MsgBox "PDF wurde erfolgreich erstellt: " & pdfPath End Sub ``` ### Erklärung des Codes: 1. **Sammlung der farbig markierten Blätter**: Der Code durchläuft alle Arbeitsblätter und fügt die hinzu, deren Tab-Farbe nicht `xlNone` ist. 2. **Druckeinstellungen**: Für jedes farbig markierte Blatt werden die Druckeinstellungen so gesetzt, dass es auf eine Seite passt. 3. **PDF-Erstellung**: Die ausgewählten Blätter werden in eine PDF-Datei exportiert. ### Verwendung: - Füge diesen Code in ein Modul in der VBA-Entwicklungsumgebung von Excel ein. - Führe das Makro `ExportColoredSheetsToPDF` aus, um die PDF zu erstellen. Stelle sicher, dass du die richtigen Berechtigungen hast, um auf den angegebenen Pfad zuzugreifen und die PDF zu speichern.
Um in Excel VBA die farbig markierten Reiter (Arbeitsblätter) auszuwählen, die Druckeinstellungen so zu ändern, dass sie auf eine Seite passen, und anschließend eine PDF zu erstel... [mehr]
Um in Excel VBA alle grün markierten Arbeitsblätter als PDF zu drucken und dabei sicherzustellen, dass jedes Arbeitsblatt auf einer Seite dargestellt wird und die erste Seite eine Kopfzeile... [mehr]
Um in Excel VBA die farbig markierten Blätter zu drucken und dabei die Druckeinstellungen so zu setzen, dass jedes Blatt auf einer Seite dargestellt wird, kannst du den folgenden Code verwenden.... [mehr]
Um in Excel VBA ein Makro zu erstellen, das den aktiven Reiter (das aktive Arbeitsblatt) als PDF-Datei druckt, jedes Arbeitsblatt auf eine Seite darstellt und die erste Seite mit einer Kopfzeile besch... [mehr]
Um in VBA eine Zelle mit dem Namen „Konto“ auszuwählen, kannst du den Namen direkt über das `Range`-Objekt ansprechen. Voraussetzung ist, dass der Name „Konto“ als be... [mehr]
Um eine Verknüpfung (z.B. eine Formel wie `='[AndereDatei.xlsx]Tabelle1'!A1`) in einer Zelle per VBA zu aktualisieren, ohne dass die verknüpfte Arbeitsmappe geöffnet ist, kann... [mehr]
Um Variablen wie `Set wsKriterien = ThisWorkbook.Worksheets("Kriterien")` beim Starten einer Excel-Datei automatisch zu setzen, kannst du das Workbook-Open-Ereignis im VBA-Editor nutzen. So... [mehr]
Der Ausdruck ```vba ThisWorkbook.Names("z06_a1401111_Bericht").RefersToR1S1 = "='z06_a1401111_Bericht'!R1S1:R20S18" ``` weist dem definierten Namen **z06_a1401111_Beric... [mehr]
Um die Schleife so umzubauen, dass **in "Personen einzelnd drucken"** in den Zellen **C9:C66** nach dem Namen gesucht und mit der Spalte B im "Arbeitsplan" verglichen wird, muss di... [mehr]
Das Problem liegt sehr wahrscheinlich an der Art, wie Excel intern mit Datumswerten umgeht. Ein Datum in Excel ist eigentlich eine Zahl (z.B. 45123 für den 01.09.2023), aber die Anzeige kann unte... [mehr]