Anzeige

VBA
Programmierer
gesucht?
 
Anzeige
VBA Programmierer gesucht?
 

VBA Codeschnipselsammlung

Arbeitsblätter anhand einer Zellenliste erstellen

Erstellt neue Arbeitsblätter anhand einer Liste von Namen. Dabei wird je markierter Zelle ein Arbeitsblatt erstellt. Das Arbeitsblatt enthält den entsprechenden Zelleninhalt als Namen.

Option Explicit
' ************************************************************************************************
' Autor/en: http://www.online-vba.de - Marc Wershoven
' Verwendung der Quelltexte auf eigene Gefahr!
' Es gelten die Nutzungsbedingungen von www.online-vba.de!
' Original-Quelltext: www.online-vba.de/vba_createsheets.php
' ************************************************************************************************


'Verwendung: Markieren Sie einen Zellenbereich und starten Sie dieses Makro

Sub MW_ArbeitsblaetterVonListeErstellen()
   Dim oZelle As Object
   Dim oNewSheet As Object
   Dim lSuccessCounter As Long
   Dim lErrCounter As Long
    
     If Workbooks.Count < 1 Then Exit Sub
     lErrCounter = 0
     lSuccessCounter = 0
    
     'Sicherheitsabfrage
     If MsgBox("Sind Sie sicher, dass Sie " & Selection.Cells.Count & _
                " neue und leere Arbeitsblätter erstellen wollen?", _
                vbExclamation + vbYesNo, "HINWEIS!") = vbYes Then
        
         On Error Resume Next
         For Each oZelle In Selection.Cells
             If Trim(CStr(oZelle.Value)) <> "" Then
                 Set oNewSheet = ActiveWorkbook.Sheets.Add(after:=Sheets(Sheets.Count))
                 oNewSheet.Name = Trim(CStr(oZelle.Value))
                 If Err.Number <> 0 Then
                     Err.Number = 0
                     Err.Clear
                     Application.DisplayAlerts = False
                     oNewSheet.Delete
                     Application.DisplayAlerts = True
                     lErrCounter = lErrCounter + 1
                 Else
                     lSuccessCounter = lSuccessCounter + 1
                 End If
             End If
         Next oZelle
         On Error GoTo 0
        
         If lErrCounter <> 0 Then
             MsgBox lErrCounter & " Arbeitsblätter konnten nicht erstellt werden, " & _
             "da Ihr Name entweder bereits vorhanden ist oder ungültige Zeichen enthält!" & _
             vbCrLf & "Es wurden " & lSuccessCounter & " Arbeitsblätter erstellt.", _
             vbInFormation + vbOKOnly, "WARNUNG!"
         Else
             MsgBox "Es wurden " & lSuccessCounter & " Arbeitsblätter erstellt.", _
             vbInFormation + vbOKOnly, "HINWEIS!"
         End If
    
     End If
End Sub


Autor: Marc Wershoven (2013)

Anzeige

VBA Programmierer gesucht?
http://www.WershovenOnline.de

Anzeige

Der Quick E-Mail Support von WershovenOnline®

Schnelle Hilfe bei Fragen rund um Microsoft® Office und VBA Makros

Der Quick E-Mail Support von WershovenOnline® Sie haben beispielsweise eine Frage zu einer Ihrer eigenen Makroprogrammierungen in VBA? Oder Sie suchen Unterstützung und Informationen über eine bestimmte Microsoft® Excel® Formel? Bei nahezu allen Fragen und Problemen rund um Microsoft® Office und VBA Makros steht Ihnen unser individueller Quick E-Mail Support zur Verfügung. Einfach, schnell und unkompliziert Ihre Frage in einer E-Mail formulieren, mit oder ohne Screenshots oder einer Beispieldatei absenden und kurze Zeit später haben Sie eine vollständige Lösung inkl. ausführlicher Erklärung vom Profi in Ihrem Postfach! Zusätzlich besteht die Option, dass wir uns mittels Fernwartung (selbstverständlich nach Ihrem Einvertändnis) direkt "live" mit Ihnen zusammen an Ihrem Bildschirm gemeinsam Fragen und Problemstellungen anschauen und lösen können!

Weitere Informationen zu diesem kostenpflichtigen Angebot finden Sie auf der Anbieterseite von WershovenOnline® auf www.wershovenonline.de.

Zum Anbieter des Quick-E-Mail-Support...

Zum Seitenanfang