2016-07-26 6 views
0

Ich habe eine Arbeitsmappe mit vielen Blättern. Ich habe viele Checkboxen auf Benutzerformular erstellt, dass, wenn ich eine Kopie von Blättern erstellen möchte, nur zu diesen Kontrollkästchen und klicken Sie auf Button1, der Name dieser Kopien wie: "(Excel)". Wie verschiebe ich diese Blätter " (Excel)" in ein neues Buch?Exportieren/Blätter in neues Buch verschieben

Außerdem möchte ich diese Blätter durch eine andere Schaltfläche in PDF exportieren.

Antwort

0

Hier ist ein einfacher Ansatz viele Blätter bewegen:

Sub CopyWorkbook() 

Dim currentSheet as Worksheet 
Dim sheetIndex as Integer 
sheetIndex = 1 

For Each currentSheet in Worksheets 

    Windows("source workbook").Activate 
    currentSheet.Select 
    if currentSheet.Name like "*(Excel)" then 
     currentSheet.Move Before:=Workbooks("target workbook").Sheets(sheetIndex) 
    End if 

    sheetIndex = sheetIndex + 1 

Next currentSheet 

End Sub 

Um sie als pdf zu exportieren diese in eine Schaltfläche klicken Ereignis tun würde:

SourceWorkbook.Sheets(Array("Sheet1", "Sheet2", "Sheet3")).Select 
    Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ 
     "C:\Users\you\Desktop\exported_sheet.pdf", Quality:=xlQualityStandard, _ 
     IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _ 
     True 

Hoffe, es hilft!

+0

Aber ich möchte viele Blätter mit dem gleichen Namen wie in 6 Blättern bewegen, ich nur 3 Blätter bewegen hat den gleichen Namen zuletzt _ (Excel) _: "Data"; ** "Zuschuss (Excel)" **; "Anlage"; ** "Anlage (Excel)" **; ** "Bub (Excel)" **; "Final" – kobebryant

+0

@kobebryant code ich gepostet Sie bewegt alle Blätter der Arbeitsmappe, egal welchen Namen sie haben. – jsanchezs

+0

liebe jsanchezs, aber ich möchte nur die Blätter bewegen, was ich will, und diese Blätter haben den gleichen Namen zuletzt "... (Excel)" – kobebryant

Verwandte Themen