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

Spaltenbereich kopieren

Spaltenbereich kopieren
03.12.2019 10:18:51
Matthias
Hallo zusammen,
ich brauche wieder eure Hilfe!!!
Ich habe eine Vergleichstabelle und 20 Einzeltabellen.
Aus der Vergleichstabelle möchte ich die Daten per VBA in die Einzeltabellen übertragen.
Im Zellenbereich B23 bis B54 sind Bezeichnungen.
Ab Spalte F beginnen die Werte, die ich in die jeweilige Tabelle Kopieren möchte.
In Zeile 2 befinden sich die Namen der Tabellenblätter.
Ich bekomme folgende Fehlermeldung:
Unzulässiger oder nicht ausreichend definierter Verweis
Vielen Dank im voraus
Matthias

Sub Expo()
Dim FoTab As String
Dim VerTa As String
Dim spalte As Long
spalte = 6
VerTa = "Vergleichstabelle"
ForTa = Worksheets(VerTa).Cells(2, spalte).Value
Application.EnableEvents = False
For spalte = 6 To Columns.Count
Worksheets(VerTa).Range(.Cells(4, 2), .Cells(54, 2)).Copy Destination:=Worksheets(ForTa). _
Cells(2, 4)
Worksheets(VerTa).Range(.Cells(4, spalte), .Cells(54, spalte)).Copy Destination:=Worksheets( _
_
_
_
ForTa).Cells(4, 2)
Next spalte
Application.EnableEvents = True
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spaltenbereich kopieren
03.12.2019 11:13:45
Daniel
Hallo Matthias,
Dim FoTab As String
ForTa = Worksheets(VerTa).Cells(2, spalte).Value
Da passt was nicht... ;-)
Gruß
Daniel
AW: Spaltenbereich kopieren
03.12.2019 11:21:33
Torsten
Hallo,
wenn du mit Option Explicit arbeiten wuerdest, wie es sein sollte, haettest du schon mal bemerkt, dass deine Variablendeklarierung nicht uebereinstimmt mit der benutzten Variablen:
Dim FoTab As String
ForTa = Worksheets(VerTa).Cells(2, spalte).Value
Im Zellenbereich B23 bis B54 sind Bezeichnungen.
Die kopierst du auch. Ist das beabsichtigt? Allerdings kopierst du B4 bis B54.
Wenn das so beabsichtigt ist, dann:

Sub Expo()
Dim ForTa As String
Dim VerTa As String
Dim spalte As Long
VerTa = "Vergleichstabelle"
ForTa = Worksheets(VerTa).Cells(2, spalte).Value
Application.EnableEvents = False
For spalte = 6 To Columns.Count
ForTa = Worksheets(VerTa).Cells(2, spalte).Value
Worksheets(VerTa).Range(.Cells(4, 2), .Cells(54, 2)).Copy Destination:=Worksheets(ForTa). _
Cells(2, 4)
Worksheets(VerTa).Range(.Cells(4, spalte), .Cells(54, spalte)).Copy Destination:=Worksheets( _
ForTa).Cells(4, 2)
Next spalte
Application.EnableEvents = True
End Sub

Gruss Torsten
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige