Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
856to860
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
856to860
856to860
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA Excel _ Clipboard_zugriff

VBA Excel _ Clipboard_zugriff
28.03.2007 09:51:00
Lars
Hallo liebe Forumsgemeinde,
ich bin schon seit einiger Zeit auf der Suche nach einer Lösung für folgendes Problem:
ich habe 2 Excel_Arbeitsmappen:
per Makro möchte ich aus Mappe1.Tabelle2 eine bestimmte Anzahl von Zellen kopieren (bzw. deren Werte) und dann Mappe2.Tabelle1 aktivieren (Mappe2 ist schon geöffnet) und von einer bestimmten Zelle aus/an (z.B. c2) die kopierten Daten einfügen.
Kann mir jemand weiterhelfen? Ich bin noch nicht so fit in VBA.
Hier mein bisheriger Versuch, der leider nur zum Ergebnis hatte, dass alle Werte aus der Zwischenablage in der Zelle c2 gelandet sind:

Sub DatenKopierenUndInArbeitsdateiEinfügen()
Worksheets("Tabelle2").Activate
ActiveSheet.Cells.Copy
Workbooks("Mappe2.xls").Worksheets("Tabelle1").Activate
Range("c2").Select
Dim objData As New DataObject
Dim varVar As Variant
objData.GetFromClipboard
varVar = objData.GetText
Range("c2").Value = varVar
Set objData = Nothing
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
freundliche Grüße
Lars

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Excel _ Clipboard_zugriff
28.03.2007 10:27:25
Oberschlumpf
Hi Lars
Versuch es mal so:

Sub DatenKopierenUndInArbeitsdateiEinfügen()
Worksheets("Tabelle2").Activate
ActiveSheet.Cells.Copy
Workbooks("Mappe2.xls").Worksheets("Tabelle1").Activate
Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
Mit Cells.Copy kopierst du ein ganzes Tabellenblatt - 255 Spalten x 65536 Zeilen
Wenn du als Ziel C2 wählst, stehen dir nur noch 253 Spalten und 65535 Zeilen zur Verfügung.
Aber Excel "will" ja auch die Spalten A + B (1 + 2) und die letzte Zeile einfügen.
Deswegen musst du als Ziel A1 angeben.
Funktioniert es denn jetzt?
Ciao
Thorsten
Anzeige
AW: VBA Excel _ Clipboard_zugriff
28.03.2007 13:17:00
Lars
Hallo Thorsten,
super, vielen dank, das hat direkt funktioniert.
Vielen Dank!
fG
Lars
AW: VBA Excel _ Clipboard_zugriff
28.03.2007 10:44:00
ingUr
Hallo, Lars,
wenn es darum geht, die Werte(!) von Ort A nach Ort B zu kopieren, wobei die beiden Ortee in geöffneten Arbeitsmappen liegen, dann kannst Du auch schreiben:
Sub Makro1()
Workbooks("Mappe1").Worksheets("Tabelle1").Range("B5:D14").Copy
Workbooks("Mappe2").Worksheets("Tabelle1").Range("B20").PasteSpecial Paste:=xlValues,
End Sub
Quell- und Zieladressen sind von dir so zu verändern, dass sie für Deine aufgabe passen.
Sofern jedoch Formeln und Bezüge mitkopiert werden sollen, können die anweisungen vereinfacht werden.
Gruß,
Uwe
Anzeige
AW: VBA Excel _ Clipboard_zugriff
28.03.2007 13:18:00
Lars
Hallo Uwe,
vielen Dank für Deine Hilfe.
Ich habe mich zunächst für die Version von Thorsten entschieden.
Deine werde ich aber auch noch mal gleich probieren.
fG
lars

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige