Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1016to1020
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

Neue Tabelle einfügen Benutzerdefiniert

Neue Tabelle einfügen Benutzerdefiniert
26.10.2008 14:01:00
Becker
Hallo liebe Excel&VBA Profis
Habe hier in Fourm gesucht und nicht passendes gefunden.
Ein änliches Code fand ich von "Erich aus Kamp-Lintfort".
Zur gesuchte Lösung;
-möchte gern eine neues Tabellen Blatt einfügen nicht nach "KW" so wie in unteren Code sondern;
-der Makro soll in der Tabelle1 ab Spalte "R2" den Datum suchen. Der Datum z.B. 26.10.2008 steht ab und zu in "R4" oder "R6" oder "R9" auf jeden Fall zwieschen "R2 und R20" steht ein Datum.
Das neue eingefügtes Tabellen Blatt solle dan so heissen "Daten von 26.10.2008"
Kann mir jemand von Euch da weiter helfen?
Für jede kommende Hilfe&Anweisungen danke ich herzlichst im voraus.
Gruß
Daniel
Option Explicit

Sub BlattNeuKW()
Dim strN As String, wks As Worksheet
strN = "KW " & Format(Sheets("Tabelle1").Cells(1, 5), "00")
For Each wks In ActiveWorkbook.Sheets
If wks.Name = strN Then Exit For
Next wks
If wks Is Nothing Then
Worksheets.Add(after:=Sheets(Sheets.Count)).Name = strN
Else
MsgBox "Blatt '" & strN & "' ist schon vorhanden.", vbInformation
End If
End Sub


3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Neue Tabelle einfügen Benutzerdefiniert
26.10.2008 14:26:00
Matthias
Hallo Daniel
Ich bin davon ausgegangen, das nur einmal ein Datum in R2:R20 vorhanden ist.
probiers mal so:

Sub BlattNeuKW()
Dim strN As String, wks As Worksheet, C As Range, xbol As Boolean
For Each C In Worksheets("Tabelle1").Range("R2:R20")
If IsDate(C.Value) Then strN = C.Value: xbol = True
Next
If xbol = False Then MsgBox "kein Datum in Tabelle1!R2:R20 gefunden": Exit Sub
For Each wks In ActiveWorkbook.Sheets
If wks.Name = strN Then Exit For
Next wks
If wks Is Nothing Then
Worksheets.Add(after:=Sheets(Sheets.Count)).Name = "Daten von " & strN
Else
MsgBox "Blatt '" & strN & "' ist schon vorhanden.", vbInformation
End If
End Sub


Gruß Matthias

Anzeige
AW: Neue Tabelle einfügen Benutzerdefiniert
26.10.2008 15:13:00
Becker
Hallo Mathias,
Hervorragende Lösung, PRIMA.
Genau so wie ich es mir vostellte.
100000000000000000000male Danke
Gruß Daniel
Korrektur !
26.10.2008 14:40:51
Matthias
Hallo Daniel
beim nochmaligem Testen ist mir aufgefallen, das da noch ein Fehler entsteht, wenn das Sheet schon vorhanden ist.
hier eine korrigierte Version.
probier es mal so:

Option Explicit
Sub BlattNeuKW()
Dim strN As String, wks As Worksheet, C As Range, xbol As Boolean
For Each C In Worksheets("Tabelle1").Range("R2:R20")
If IsDate(C.Value) Then strN = C.Value: xbol = True
Next
For Each wks In ActiveWorkbook.Sheets
If wks.Name = "Daten von " & strN Then MsgBox "Blatt '" & strN & "' ist schon vorhanden.",  _
vbInformation: Exit Sub
Next wks
If xbol = False Then MsgBox "kein Datum in Tabelle1!R2:R20 gefunden": Exit Sub
Worksheets.Add(after:=Sheets(Sheets.Count)).Name = "Daten von " & strN
End Sub


Gruß Matthias

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige