Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1760to1764
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
Ich suche eine Lösung
01.06.2020 09:59:46
Thomas
Guten Morgen,
Ich suche eine Lösung für das überprüfen von Tabellenblätter in der Arbeitsmappe.
Ich mache folgendes, per VBA kopiere und verschiebe ausgefüllte Tabellenblätter. Der Name des Tabellenblatts wird aus einer Zelle im Tabellenblatt gelesen und eingefügt. Jetzt kann es aber vorkommen dass beim weiteren kopieren und verschieben der Tabelle, der Tabellenname der schon existiert wieder benütz wird. So wird dann excel ein für sich logischen Blattname generieren und die Tabelle so dann abspeichern.
Ich möchte jetzt aber dass wenn ich die Tabelle kopiere und verschiebe, eine Prüfung abläuft und sollte der Name schon vorkommen müsste eine Msg box mit der Meldung kommen dass dieser Blattname schon existiert. Und wenn der Name frei ist, sollte der Prozess gewöhnlich weiter ablaufen.
Kann man so was machen? Für eine Hilfe hierzu wäre ich dankbar.
Freundliche Grüsse
Thomas

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ich suche eine Lösung
01.06.2020 10:13:11
Hajo_Zi
Hallo Thomas,
feststellen, ob Worksheet vorhanden ist
hier ein Beispiel, welches Du relativ einfach entsprechend abändern kannst:
Option Explicit
Sub TabAuswahl()
Dim BoVorhanden As Boolean
Dim WsTabelle As Worksheet
For Each WsTabelle In Worksheets
If WsTabelle.Name = "Tabelle1" Then
BoVorhanden = True
Exit For
End If
Next WsTabelle
If BoVorhanden Then
'vorhanden
Else
'nicht vorhanden
End If
End Sub


AW: Ich suche eine Lösung
01.06.2020 13:40:45
Thomas
Hallo Hajo, besten Dank für deine Mühe!
Ich habe dein Skript al in eine Arbeitsmappe übernommen und ein ein Modul eingebaut. Habe es dann mal laufen gelassen aber es kommt keine Reaktion vom Skript. Keine Ahnung wieso?
Wollte jetzt gerade mal meine Datei anhängen aber es geht nicht.
Darum stelle ich das Skript mal hier einfach so rein. Ev. Siehst du daran was ich machen will.
Danke und Gruss Thomas
Sub RapportArchivieren()
'Rapport archivieren prüfen
If Tabelle1.Range("AE7") Neuer Rapport

Anzeige
AW: Ich suche eine Lösung
01.06.2020 15:06:16
Hajo_Zi
Hallo Thomas,
Meine Vorschlag hat Dir also nicht Gefallen darum ist er nicht entrhalten.
Ich schreibe nicht für den Papierkorn. Ich bin dann raus.
Viel Erfolg noch.
Gruß Hajo
AW: Ich suche eine Lösung
01.06.2020 16:01:38
Thomas
Hallo Hajo,
und wie mir dein Vorschlag gefällt. :-) ich kann ihn weiter verarbeiten und integrieren. besten Dank!!!!
AW: Ich suche eine Lösung
01.06.2020 14:07:32
Thomas
Hallo Hajo,
wenn man ein bisschen studiert kommt was raus dabei.
Ich habe dein Grundgerüst zum laufen gebracht und sogar mit der Funktionsweise die ich brauche.
Somit alles bestens und danke schön nochmal.
Sub TabAuswahl()
Dim Zelle As String
Dim BoVorhanden As Boolean
Dim WsTabelle As Worksheet
For Each WsTabelle In Worksheets
If WsTabelle.Name = Tabelle1.Range("A1") Then
BoVorhanden = True
Exit For
End If
Next WsTabelle
If BoVorhanden Then
MsgBox "ja"
Else
MsgBox "nein"
End If
End Sub

Anzeige
AW: Ich suche eine Lösung
01.06.2020 14:17:39
GerdL
Moin
Sub Unit()
If TabNamevorhanden(Tabelle1.Range("A7")) = True Then
MsgBox "Der Name ist bereits vorhanden!"
Exit Sub
End If
MsgBox "Weiter im Code!"
End Sub
Public Function TabNamevorhanden(strName As String) As Boolean
Dim WsTabelle As Worksheet
For Each WsTabelle In Worksheets
If UCase$(WsTabelle.Name) = UCase$(strName) Then
TabNamevorhanden = True
Exit Function
End If
Next WsTabelle
End Function

Gruß Gerd

209 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige