Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Neue Tabellenblatt verknüpfen mit einer Zelle

Neue Tabellenblatt verknüpfen mit einer Zelle
22.01.2024 15:41:40
Jean K.
Moin,

wie kann ich eine Verknüpfung einer Zelle mit dem neu generierten Tabellenblatt erstellen, sodass der Tabellenblatt den Namen = Inhalt A3 hat.

Sub Unit()

Dim Quelle As Range, Ziel As Range, a As Long

Set Quelle = ActiveSheet.Range("A36:C75")
Call Worksheets.Add(After:=ActiveSheet)
Set Ziel = ActiveSheet.Range("A1").Resize(Quelle.Rows.Count, Quelle.Columns.Count)

Call Quelle.Copy(Destination:=Ziel)

For a = 1 To Quelle.Columns.Count
Ziel.Columns(a).ColumnWidth = Quelle.Columns(a).ColumnWidth
Next

Set Quelle = Nothing: Set Ziel = Nothing

End Sub

Danke.

Gruß Jean
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Neue Tabellenblatt verknüpfen mit einer Zelle
22.01.2024 18:23:00
Yal
Hallo Jean,

Sub Unit()

Dim Quelle As Range
Dim ZielWS As Worksheet
Dim a As Long

Set Quelle = ActiveSheet.Range("A36:C75")
Set ZielWS = Worksheets.Add(After:=ActiveSheet)

Quelle.Copy Destination:=ZielWS.Range("A1")

For a = 1 To Quelle.Columns.Count
ZielWS.Columns(a).ColumnWidth = Quelle.Columns(a).ColumnWidth
Next
End Sub


VG
Yal
Anzeige
AW: Neue Tabellenblatt verknüpfen mit einer Zelle
23.01.2024 07:40:09
Jean K.
Hallo Yal,

leider funktioniert es mit deinem Code nicht.
Die Kopierfunktion als auch die Änderung des Tabellennamen wird nicht durchgeführt

Gruß
Jean
AW: Neue Tabellenblatt verknüpfen mit einer Zelle
23.01.2024 13:46:16
Yal
Hallo Jan,

sorry, Umbenennung vergessen:
Sub Unit()

Dim Quelle As Range
Dim ZielWS As Worksheet
Dim a As Long

Set ZielWS = Worksheets.Add(After:=ActiveSheet)
ZielWS.Name = ActiveSheet.Range("A3").Value

Set Quelle = ActiveSheet.Range("A36:C75")
Quelle.Copy Destination:=ZielWS.Range("A1")
For a = 1 To Quelle.Columns.Count
ZielWS.Columns(a).ColumnWidth = Quelle.Columns(a).ColumnWidth
Next
End Sub


VG
Yal
Anzeige
AW: Neue Tabellenblatt verknüpfen mit einer Zelle
23.01.2024 15:12:43
Jean K.
Hallo Yal,

ich bekomme mit folgendem Code ein Error 400 angezeigt:

Sub Unit()
Dim Quelle As Range
Dim ZielWS As Worksheet
Dim a As Long

Set ZielWS = Worksheets.Add(After:=ActiveSheet)
ZielWS.Name = ActiveSheet.Range("A3").Value

Set Quelle = ActiveSheet.Range("A36:C75")
Quelle.Copy Destination:=ZielWS.Range("A1")
For a = 1 To Quelle.Columns.Count
ZielWS.Columns(a).ColumnWidth = Quelle.Columns(a).ColumnWidth
Next
End Sub

Woran kann das liegen?

VG Jean
Anzeige
Gute Frage
24.01.2024 09:47:56
Yal
Woran kann das liegen?

Nun ja, zuerst was bedeutet diese Fehler? (soll ich für dich googeln?)
Zweitens, kommt diese Frage in deiner Datei. Die habe ich nicht. Bei Fehler 400 (habe doch gegoogelt) könnte der Fehler nur auf deinem Rechner auftreten.
Drittens, an welcher Stelle kommt der Fehler vor?

usw. Ohne Fleiss, kein Preis.

VG
Yal

Anzeige
AW: Gute Frage
25.01.2024 14:32:49
Jean K.
Hallo,

die Kopierfunktion wird nicht ausgeführt und es kommt ein Fehlermeldung als Pop-up mit 400.
Leider steht bei google nichts dazu was die 400 sein könnten...

Gruß

AW: Gute Frage
25.01.2024 14:47:19
Yal
hmm...

Ich sende Dir 2 Version, wobei in der erste auch 2 Möglichkeiten vorhanden sind:

Version 1+2:
Sub Unit()

Dim Quelle As Range
Dim ZielWS As Worksheet
Dim a As Long

Set ZielWS = Worksheets.Add(After:=ActiveSheet)
ZielWS.Name = ActiveSheet.Range("A3").Value

Set Quelle = ActiveSheet.Range("A36:C75")
Quelle.Copy
ZielWS.Range("A1").PasteSpecial 'Version 1
'ZielWS.Range("A1").Resize(Quelle.Rows.Count, Quelle.Columns.Count).PasteSpecial 'Version 2 falls 1 nicht funktioniert
For a = 1 To Quelle.Columns.Count
ZielWS.Columns(a).ColumnWidth = Quelle.Columns(a).ColumnWidth
Next
End Sub


Version 3
Sub Unit()

Dim Quelle As Range
Dim ZielWS As Worksheet
Dim a As Long

Set ZielWS = Worksheets.Add(After:=ActiveSheet)
ZielWS.Name = ActiveSheet.Range("A3").Value

With ActiveSheet.Range("A36:C75")
.Copy Destination:=ZielWS.Range("A1").Resize(.Rows.Count, .Columns.Count)
For a = 1 To .Columns.Count
ZielWS.Columns(a).ColumnWidth = .Columns(a).ColumnWidth
Next
End With
End Sub


VG
Yal
Anzeige
AW: Gute Frage --> Besten Dank
26.01.2024 08:23:15
Jean K.
Vielen Dank Yal! - hast mir sehr weiter geholfen.
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige