Hallo Mat,
also bei mir läuft der Code einwandfrei – ohne "Runtime Error 424 - object required" bzw. seiner deutschen Übersetzung. Allerdings musst ich dazu auch den Tabellen – Codename in "Content_Calendar" bzw. "Posts_ORIGINAL" ändern ! Und den Codenamen legst du doch im VBA Editor-Eigenschaftsfenster fest ! ? !
Der Blattname in der Blattregisterkarte (unten) ist jedoch "Tabellenname", d.h. der Code muss das
Objekt "Tabelle" (Worksheet) so ansprechen :
If Sheets("Content_Calendar").Range("C12") = "ORI1_" Then
Sheets("Posts_ORIGINAL").Activate
Sheets("Posts_ORIGINAL").Range("C10:F22").Copy
Sheets("Content_Calendar").Activate
Sheets("Content_Calendar").Range("C13").Select
ActiveSheet.Paste
Else
Sheets("Data").Range("J7").Copy
Sheets("Content_Calendar").Activate
Sheets("Content_Calendar").Range("D19").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Last.not.Least deine Code etwas übersichtlicher – und Tschüss (gabi)
Sub mDay_1()
Dim s As String
Dim WennBereich As Range, VonBereich As Range, NachBereich As Range
s = ActiveCell.Value 'wozu auch immer
Set WennBereich = Sheets("Content_Calendar").Range("C12")
Set NachBereich = Sheets("Content_Calendar").Range("C13")
Select Case WennBereich.Value
Case "ORI1_"
Set VonBereich = Sheets("Posts_ORIGINAL").Range("C10:F22")
Case "ORI2_"
Set VonBereich = Sheets("Posts_ORIGINAL").Range("P10:S22")
Case "ORI3_"
Set VonBereich = Sheets("Posts_ORIGINAL").Range("C29:F41")
Case "ORI4_"
Set VonBereich = Sheets("Posts_ORIGINAL").Range("P29:S41")
'usw.
'
End Select
Application.ScreenUpdating = False 'guck VBA Hilfe
If Not VonBereich Is Nothing Then
'd.h. im Select wurde ein Wert gefunden
VonBereich.Copy Destination:=NachBereich
Else
'd.h. nichts gefunden
Sheets("Data").Range("J7").Copy Destination:= _
Sheets("Content_Calendar").Range("D19")
End If
'
Sheets("Content_Calendar").Activate
Application.ScreenUpdating = True
'
End Sub
PS: das zum vorletzen Beitrag – LOL
|