Clever-Excel-Forum

Normale Version: Bereiche mit Variablen übertragen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Moin,

Normalerweise übertrage ich Bereiche mit folgendem Code:


Code:
Sub CopyPaste01()
   
   Sheets("Tabelle1").Range("datarange").Copy
   
   With Sheets("Tabelle2").Cells(6, 2)
       .PasteSpecial Paste:=xlValues           ' Werte
       .PasteSpecial Paste:=xlFormats          ' Formate
   End With
   
   Application.CutCopyMode = False
   
End Sub

Jetzt möchte ich aber das ganze Copy Paste in ein Private Sub packen und nur die Variablen zu übergeben
Also ungefähr so:


Code:
Dim Tabelle1, Tabelle2 As Sheets
Dim rangename As Range
Dim r01, s01 As Integer

Sub CreateTables()

   r01 = 6
   s01 = 2
   rangename = Range("datarange")
   Call CopyPaste01
End Sub

Private Sub CopyPaste01()
   
   Sheets("Tabelle1").Range(rangename).Copy
   
   With Sheets("Tabelle2").Cells(r01, s01)
       .PasteSpecial Paste:=xlValues           ' Werte
       .PasteSpecial Paste:=xlFormats          ' Formate
   End With
   
   Application.CutCopyMode = False
   
End Sub


Leider funktionierts so nicht. Wie macht man es richtig?
oder
Code:
Sub M_CoPa()
   Sheets("Tabelle1").Range("datarange").Copy Sheets("Tabelle2").Cells(6, 2)
End Sub

oder
Code:
Sub M_snb()
    M_copa "Tabelle1","datarange","Tabelle2",6,2
end sub

Sub M_CoPa(c00,c01,c02,x,y)
    Sheets(c00).Range(c01).Copy Sheets(c03).Cells(x, y)
End Sub
Aber das scheint mir zu aufwändig.