Pascal, Basic und andere nicht aufgelistete
-
Wolke
- Beiträge: 18
- Registriert: Di Aug 30, 2011 1:53 pm
Beitrag
von Wolke » Fr Dez 14, 2018 2:44 pm
Ich möchte in Excel den Inhalt einer Zelle per Button in eine bestimmte Zelle (hier im Beispiel G12) auf einer bestimmten Mappe ("Zielmappe") kopieren.
Folgenden Code habe ich dafür probiert, bekomme jedoch immer eine Fehlermeldung:
Code: Alles auswählen
Sub kopieren()
Selection.Copy
Sheets("Zielmappe").Select
cells(12, G). Select
ActiveSheet.Paste
End Sub
Könnte mir da jemand helfen? Vielen Dank im Voraus.
EDIT nufan: Code-Tags
-
Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
-
Kontaktdaten:
Beitrag
von Xin » Fr Dez 14, 2018 3:06 pm
FAQ: Frage formulieren
"Eine Fehlermeldung" ist keine hilfreiche Problembeschreibung.

Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
-
Wolke
- Beiträge: 18
- Registriert: Di Aug 30, 2011 1:53 pm
Beitrag
von Wolke » Fr Dez 14, 2018 8:44 pm
Entschuldige.
Die Fehlermeldung lautet:
"Laufzeitfehler 1004, Anwendungs- oder objektdefinierter Fehler"
-
cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Beitrag
von cloidnerux » Sa Dez 15, 2018 11:35 am
Google sagt, dass das meist ein Fehler ist mit den Zugriffen, daher dein "ActiveSheet.Paste" bezieht sich evt auf das Sheet, auf dem dein Script gestartet ist und nicht deine "Zielmappe". Oder irgendwas ist Schreibgeschützt.
Redundanz macht wiederholen unnötig.
quod erat expectandum
-
Wolke
- Beiträge: 18
- Registriert: Di Aug 30, 2011 1:53 pm
Beitrag
von Wolke » So Dez 16, 2018 7:29 am
Die Zielmappe wird bei der Ausführung des Codes aufgerufen, auch die jeweilige Zelle in der "Startmappe" wird kopiert (es erscheint der charakteristische Rahmen um die Zelle), nur der Inhalt nicht in die Zelle G12 geschrieben, sondern stattdessen taucht o.g. Fehlermeldung auf. Schreibgeschützt ist die Mappe auch nicht.

Es scheitert im Prinzip am Schreiben des Zelleninhalts in die Zelle G12 auf der Zielmappe.
-
nufan
- Wiki-Moderator
- Beiträge: 2558
- Registriert: Sa Jul 05, 2008 3:21 pm
Beitrag
von nufan » So Dez 16, 2018 1:54 pm
Hallo Wolke!
Ich kann deinen Fehler bei mir reproduzieren, allerdings bin ich kein VBA-Experte.
Ich konnte aber eine funktionierende Variante über die "Makro aufzeichnen" Funktion erstellen:
Code: Alles auswählen
Sub kopieren()
Selection.Copy
Sheets("Zielmappe").Select
Range("G12").Select
ActiveSheet.Paste
End Sub
Der Unterschied liegt also in der Verwendung der "Range" Funktion anstelle von "Cells".
-
Wolke
- Beiträge: 18
- Registriert: Di Aug 30, 2011 1:53 pm
Beitrag
von Wolke » Mo Dez 17, 2018 6:40 am
Vielen Dank. Probiere ich gleich aus.

-
nufan
- Wiki-Moderator
- Beiträge: 2558
- Registriert: Sa Jul 05, 2008 3:21 pm
Beitrag
von nufan » Mo Dez 17, 2018 4:15 pm
Ich habe mir deinen ursprünglichen Code nochmal angesehen. Das Problem am "Cells"-Aufruf ist, dass der Spaltenindex nicht unter Anführungszeichen gesetzt ist. So sieht der korrekte Aufruf aus:
-
Wolke
- Beiträge: 18
- Registriert: Di Aug 30, 2011 1:53 pm
Beitrag
von Wolke » Mi Dez 19, 2018 1:53 pm
Dankeschön. Was mich hier wundert - zwei Codes, gleiche Funktion...?