Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1540to1544
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

Excel Tabellenblattname per VBA bennen

Excel Tabellenblattname per VBA bennen
20.02.2017 10:16:22
Monal
Hallo Zusammen,
ich hoffe, dass ihr mir bei meinem Problem weiterhelfen könnt.
Als Grundlage ich habe ich eine Access und eine Excel Datei.
In der Access Datei ist eine Kombinationsbox. Wenn ich in dieser einen Eintrag auswähle, öffnet sich die Excel Datei und der Eintrag wird in dem Tabellenblatt "Übersicht" in Spalte E4 z.B. "Apfel" eingetragen.
Nun möchte ich in Excel den eingetragenen Wert "Apfel" mit den vorhandenen Tabellenblättern vergleichen:
- ist der Name schon vorhanden, soll das Tabellenblatt aktiviert werden
- ist der Name noch nicht vorhanden, soll die "Vorlage" kopiert und in das Tabellenblatt in den entsprechenden Namen umbenannt werden.
Leider weiß ich jetzt nicht mal wie ich das anfangen soll.
Könnt ihr mir weiterhelfen? Bei Fragen immer gerne melden!
viele Grüße
Monal

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel Tabellenblattname per VBA bennen
20.02.2017 10:32:28
Bernd
Servus,
versuche mal folgenden Code in einem allg. Modul:

Sub tabellenblattvergleich()
Dim ws As Worksheet
Dim vorhanden As Boolean
For Each ws In ThisWorkbook.Worksheets
If ws.Name = Sheets("Übersicht").Cells(4, 5).Value Then
vorhanden = True
ws.select
Exit For
Else
vorhanden = False
End If
Next ws
If vorhanden = False Then
Sheets("Vorlage").Copy after:=Sheets(Sheets.Count)
ActiveSheet.Name = Sheets("Übersicht").Cells(1, 1).Value
End If
End Sub
Grüße, Bernd
AW: Excel Tabellenblattname per VBA bennen
20.02.2017 11:15:51
Monal
Hallo Bernd,
habe deine Lösung jetzt getestet. Es funktioniert soweit alles wie gewünscht!! Vielen Dank dafür! Auch für die super schnelle Antwort!
Leider schaffe ich es nur noch nicht, dass die Prozedur von alleine startet. In dem Tabellenblatt "Übersicht" ist das Feld E4 leer und die Prozedur soll ausgeführt werden, sobald hier ein Eintrag (der kommt von Access) vorgenommen wird.
Habe ich deinen Code falsch eingefügt? Oder muss ich noch etwas ergänzen damit das klappt?
Nochmals vielen Dank für deine tolle Hilfe!
viele Grüße
Monal
Anzeige
AW: Excel Tabellenblattname per VBA bennen
20.02.2017 11:36:19
Bernd
Servus Monal,
teste mal diesen Code im Tabellenblatt Übersicht

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$E$4" And Target.Value  "" Then
Call tabellenblattvergleich
End If
End Sub
Grüße, Bernd
AW: Excel Tabellenblattname per VBA bennen
23.02.2017 10:14:23
Monal
Hallo Bernd,
das ist ja großartig!!! Es klappt!!!! Super Klasse!! Whoohooo! Bin noch total aus dem Häuschen. :-)
Vielen Dank für Deine Klasse Hilfe!!!
Die anderen Codes teste ich noch und gebe euch dazu noch Rückmeldung.
viele Grüße
Monal
Gerne und Danke für die Rückmeldung owt!
24.02.2017 14:48:44
Bernd
AW: Excel Tabellenblattname per VBA bennen
20.02.2017 10:36:03
ChrisL
Hi Monal
Oder so...
Sub t()
Call BlattCheck("Apfel")
End Sub

Private Sub BlattCheck(strInput As String)
Dim WS As Worksheet
For Each WS In ThisWorkbook.Worksheets
If WS.Name = strInput Then
WS.Activate
Exit Sub
End If
Next WS
Sheets("Vorlage").Copy Before:=Sheets(1)
ActiveSheet.Name = strInput
End Sub

cu
Chris
Anzeige
AW: Excel Tabellenblattname per VBA bennen
20.02.2017 11:18:41
Monal
Hallo Chris,
vielen Dank für deine schnelle Nachricht! Ich bin gerade dabei die andere Lösung zu testen. Ich Teste danach auch deine Lösung und gebe dir dann dazu Rückmeldung.
vielen Dank für deine Hilfe!
viele Grüße
Monal
AW: Excel Tabellenblattname per VBA bennen
20.02.2017 11:22:15
ChrisL
Hi
Ja Teste mal... Allerdings wirst du damit vermutlich die gleichen Probleme wie mit dem anderen Makro haben. Man müsste mal dein Access-Makro sehen...
cu
Chris
AW: Excel Tabellenblattname per VBA bennen
20.02.2017 10:38:19
Daniel
Hi
der Code für die von dir gewünschte Aktion (Blatt aktivieren oder falls nichg vorhanden neu erstellen) würde so aussehen:
dim wsh as worksheet
on error resume next
set wsh = Worksheets(Range("E4").Value)
On error goto 0
if wsh is nothing then
set wsh = Sheets("Vorlage").Copy(after:=Sheets("Vorlage"))
wsh.Name = Range("E4").Value
else
wsh.Select
end if
wie das jetzt mit deinem Access zusammespielt, kann ich dir auch nicht sagen.
Gruß Daniel
Anzeige
AW: Excel Tabellenblattname per VBA bennen
20.02.2017 11:25:12
Monal
Hallo Daniel,
vielen Dank für deinen schnellen Beitrag. Sobald ich dazu gekommen bin deine Lösung zu testen gebe ich dir Rückmeldung!
vielen Dank für deine Hilfe!
viele Grüße
Monal
AW: Excel Tabellenblattname per VBA bennen
20.02.2017 11:30:54
Monal
Hallo Daniel,
vielen Dank für deinen schnellen Beitrag. Sobald ich dazu gekommen bin deine Lösung zu testen gebe ich dir Rückmeldung!
vielen Dank für deine Hilfe!
viele Grüße
Monal

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige