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

Fehler beim Kompilieren: Erwartet: Anweisungsende

Fehler beim Kompilieren: Erwartet: Anweisungsende
19.09.2013 13:30:36
Georg
Hallo Excel Welt,
ich hab voll die dämliche DAU-Frage, die mich gerade mal wahnsinnig macht.
Wieso bekomme ich auf diesen Code:

Sub kopieren()
Range("A86").Copy Range("B86").PasteSpecial Paste:=xlpasteValues
End Sub
diese Fehlermeldung:
Fehler beim Kompilieren: Erwartet: Anweisungsende
?
Danke und Gruß Georg

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

Betreff
Datum
Anwender
Anzeige
AW: Fehler beim Kompilieren: Erwartet: Anweisungsende
19.09.2013 13:35:11
Hajo_Zi
Hallo Georg,
da ein Enter nach Copy fehlt.
Values sind immer 2 Zeilen.
Gruß Hajo

AW: Fehler beim Kompilieren: Erwartet: Anweisungsende
19.09.2013 13:39:17
Georg
Hallo Hajo,
wenn ich nur copy sage, dann geht es in einer Zeile, wenn ich aber copy und dann ein pastespecial .. mache benötige ich zwei Zeilen. Ist das so richtig?
Wär ich nieeee drauf gekommen! Vielen Dank Hajo!!
Gruß Georg

Ja, das ist richtig!
19.09.2013 17:28:35
Erich
Hi Georg,
"Copy" und "PasteSpecial" sind Methoden der Klasse "Range".
Die beiden haben - auch in deiner Anwendung - nichts miteinander zu tun, außer dass beide
mit der Zwischenablage arbeiten.
Es sind zwei unabhängige Anweisungen, zwei verschiedene Methodenaufrufe für verschiedene Objekte (Ranges).
Copy wendest du an auf die Zelle A86. Dann steht die Zelle A86 in der Zwischenablage, mit Wert, Formaten usw.
PasteSpecial wendest du an auf die Zelle B86. Wegen des Parameters "xlPasteValues"
holt PasteSpecial nur den Wert aus der Zwischenablage und schreibt ihn in B86.
Schau dir diese Möglichkeiten mal an:

Option Explicit
Sub kopieren1()                     ' nur Zellwert
Range("A86").Copy
' jetzt ist die Zelle A86 in der Zweischenablage
Range("B86").PasteSpecial Paste:=xlPasteValues
' ...PasteSpecial Paste:=xlPasteValues holt
' den Wert aus der Zweischenablage
End Sub
Sub kopieren2()            ' Zellwert, Formate, ...
Range("A86").Copy Destination:=Range("B86")
' oder
Range("A86").Copy Range("B86")
End Sub
' So gehts am einfachsten:
Sub kopieren3()                     ' nur Zellwert
Range("B86") = Range("A86").Value
End Sub
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
auch mit nur sichtbaren möglich?
19.09.2013 17:44:07
Georg
Hallo Erich,
... klasse, wieder was gelernt! Wieviel Arten zu kopieren gibt es denn eigentlich....?
Das klappt ja auch mit Bereichen. Aber auch dann noch, wenn im Quellbereich bereits gefiltert oder sonstwie ausgeblendet ist und ich nur die sichtbaren Zellen haben will?
Sub kopieren3()                     ' nur Zellwert
Range("B6:B80") = Range("A6:A80").Value
End Sub

Gruß Georg

AW: Kopieren ohne Ausgeblendete
20.09.2013 09:21:22
Georg
Hallo Erich,
ja, dort und sonst in der Recherche finde ich aber nur die "klassische" Variante mit: erst das eine Blatt, dann das andere Blatt, wie man es aus dem Recorder bekommt.
Sub aatest()
Range("B7:D36").SpecialCells(xlCellTypeVisible).Copy
Sheets("Lieferschein").PasteSpecial Paste:=xlPasteValues
Sheets("Selektion").Select
Range("D3").Select
End Sub
An dem o.a. Code gefiel mir, dass alles in einer Zeile abgefrühstückt wird. Also irgendwie so...:
Sub kopieren3()
Range("B6:B80").SpecialCells(xlCellTypeVisible) = Range("A6:A80").SpecialCells( _
xlCellTypeVisible).Value
End Sub
Dabei kopiert er aber nur die erste Zelle. Den Rest nicht... :-(
Geht da dennoch was?
Danke Georg

Anzeige

100 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige