Microsoft Excel

Excel und VBA: Formeln, Programmierung, Lösungen

Die Excel/VBA-Beispiele

Thema

Tabellenblätter kopieren, wenn Email-Adresse vorhanden

Gruppe

Vergleich

Problem

Alle Tabellenblätter, die in Zelle C5 eine abzufragende Email-Adresse haben, sollen in eine neue Arbeitsmappe kopiert werden.

Lösung
Geben Sie den Code in ein Standardmodul ein und weisen Sie ihn einer Schaltfläche zu.

StandardModule: Modul1

Sub CopyWks()
   Dim wkb As Workbook
   Dim wks As Worksheet
   Dim sEmail
   Application.ScreenUpdating = False
   sEmail = InputBox("Email-Adresse:", , "hans@herber.de")
   If sEmail = "" Then Exit Sub
   Set wkb = ThisWorkbook
   For Each wks In wkb.Worksheets
      If wks.Range("C5").Value = sEmail Then
         If wkb.Name = ActiveWorkbook.Name Then
            wks.Copy
         Else
            wks.Copy after:=Worksheets(Worksheets.Count)
         End If
      End If
   Next wks
   Worksheets(1).Select
   ActiveSheet.Buttons.Delete
   Rows("7:16").Delete
   Application.ScreenUpdating = True
End Sub