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

Laufzeitfehler PasteSpecial

Laufzeitfehler PasteSpecial
24.03.2014 14:47:48
Marco
Hallo Hans
Ich habe gesehen, dass du Gabriela 2005 (https://www.herber.de/forum/archiv/564to568/566106_Fehler_PasteSpecialMethode_kann_nicht.html#566252) schon mit einem ähnlichen Problem helfen konntest, weshalb ich dich mit meinem Problem um Hilfe beten möchte. Auch bei mir erscheint der Laufzeitfehler "PasteSpecial-Methode kann nicht ausgeführt werden". Mein Makro lautet dabei wie folgt:
If Sheets("2PK-E").Range("a13").Value = "1" And Sheets("2PK-E").Range("a75").Value "4" Then Sheets("PT2K").Range("IK225:IU232").Copy
Range("GB225").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Woran hapert es denn hier? Wäre super nett, wenn du (bzw. irgendjemand) dafür ne Lösung hätte.
Liebe Grüsse aus der Schweiz
Marco

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler PasteSpecial
24.03.2014 14:52:37
JoWE
If Sheets("2PK-E").Range("a13").Value = 1 And Sheets("2PK-E").Range("a75").Value 4 Then Sheets("PT2K").Range("IK225:IU232").Copy Destination:=Sheets("2PK-E").Range("GB225").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

AW: Laufzeitfehler PasteSpecial
24.03.2014 16:30:57
Marco
Mensch, das ging ja super schnell - Vielen Dank!
Leider klappt es immer noch nicht. Wenn ich das Makro wie von dir beschrieben ausführen lassen will, gibt es mir einen Syntaxfehler an. Ich habe jetzt dein Makro bei den Zahlen um "" ergänzt (also "1" und "4"), wodurch er jedoch bei Paste angibt, er brauche ein Anwendungsende...
Vielleicht erkläre ich mal schriftlich, was das Makro ausführen sollte:
Excel soll prüfen, ob in der Zelle a13 des Sheets 2PK-E der Wert 1 steht (1 steht für eine Person) und gleichzeitig in der Zelle a75 NICHT 4 steht. Falls das beides zutrifft, soll er den Range IK225:IU232 kopieren und bei GB225 einfügen.
Diese Prüfung soll er auch für die Werte 2, 3, 4 und 5 durchführen und bei jeweils anderen Zellbereichen einfügen.
Das Ganze soll aufgrund von Aufgabenzuweisungen (welche dann die Personenzuweisung 1/2/3/4/5 ergeben) einen Kalender der betreffenden 5 Personen mit den jeweils zugewiesenen Aufgaben "füllen", sodass man sieht, wer wie viele und welche Aufgaben zugewiesen bekam... Ziemlich komplex.
Ich danke nochmals für die ultraschnelle Bearbeitung, hatte keine Chance annhähernd schnell auszuprobierend und mich zu bedanken. Tolles Forum hier.
Gruss
Marco

Anzeige
AW: Laufzeitfehler PasteSpecial
24.03.2014 16:46:55
Rudi
Hallo,
Schema:
Sub aaa()
Dim rngZiel As Range
With Sheets("2PK-E")
If .Range("a75").Value  4 Then
Select Case .Range("a13")
Case 1
Set rngZiel = Range("GB225")
Case 2
Case 3
Case 4
Case 5
End Select
If Not rngZiel Is Nothing Then
.Range("IK225:IU232").Copy
rngZiel.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
End If
End If
End With
End Sub

Für Person 2-5 entsprechend das Ziel definieren.
Gruß
Rudi

AW: Laufzeitfehler PasteSpecial
25.03.2014 12:21:16
Marco
Ist es denn jetzt nicht so, dass NICHT (mehr) geprüft wird, welcher Personencode (also 1, 2, 3, 4, 5) in Zelle a13 steht und nur dann die jeweils zu diesem Case gehörige Aktion ausgeführt wird (das einfügen im angegebenen Zielrange)?

Anzeige
AW: Laufzeitfehler PasteSpecial
25.03.2014 14:03:57
Rudi
Hallo,
natürlich wird geprüft, was in A13 steht.
Select Case .Range("a13")
Ich habe aber auch geschrieben, dass du für 2-5 das Ziel definieren musst. Analog 1.
Gruß
Rudi

AW: Laufzeitfehler PasteSpecial
24.03.2014 15:40:18
Rudi
Hallo,
du kopierst ja nur wenn....
Fügst aber auf jeden Fall ein.
If Sheets("2PK-E").Range("a13").Value = "1" And Sheets("2PK-E").Range("a75").Value  "4" Then
Sheets("PT2K").Range("IK225:IU232").Copy
Range("GB225").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
End If

Gruß
Rudi

Anzeige
AW: Laufzeitfehler PasteSpecial
24.03.2014 18:03:08
Marco
Dein Ansatz ist genau die Entschlackung, die ich mir gewünscht habe. Das sieht super aus, danke vielmals Rudi.
Leider weiss ich nicht, was du mit dem zweiten Post gemeint hast. Also dass ich vorhin aus Versehen jedes Mal eingefügt habe, habe ich gesehen. Das wäre ja gerade nicht die Idee, sondern das Einfügen soll nur dann vorgenommen werden, wenn die betreffende Bedingung erfüllt ist und natürlich auch nur bei der betreffenden Person.
Aber wie sieht es denn jetzt bei deiner Methode aus? Leider hat es mir mit dieser Methode bei allen 5 Personen jeden Termin eingetragen, was ja auch nicht stimmt. Er sollte ja nur bei derjenigen eingetragen werden, welche ihn zugeteilt bekommt (und bei der darum die If Bedingung erfüllt ist). Ich vermute schwer, dass der Fehler bei mir liegt...
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige