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

Kopieren statt import?

Kopieren statt import?
Chris
Da mir beim Import mittels VBA sich die !absoluten! Zellbezüge ändern, möchte ich nun die Daten nicht mehr importieren, sondern nur kopieren + einfügen. Leider funktioniert es auf keine mir bekannte weise ;(
mit dem letzten Versuch bin ich schon ein wenig näher gekommen aber es ist immer noch nichts im Sheet data erschienen.
Hier mal mein Code, vlt. hat ja jemand von euch eine bessere Idee:

Workbooks.Open Messdaten
Columns("A:A").Select
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(  _
_
_
13, 1 _
)), TrailingMinusNumbers:=True
Columns("M:M").Select
Selection.Delete
Columns("A:A").Select
Selection.Copy
ActiveWorkbook.Close True
Workbooks("originalbezüge1").Activate
With Sheets("data")
Range("A2").Select
Selection.Paste
End With

anmerkung1:
JA ich weiss mit Select sollte man nicht arbeiten, aber da alles andere auch nicht funktioniert hat habe ich es mal so ausprobiert.
anmerkung2:
Der obere Teil des Codes dient dazu die Daten (die alle in Spalte A mittels Leerzeichen getrennt sind) so zu formatieren dass sie in verschiedene Spalten kommen
anmerkung3:
Die Daten befinden sich in einem anderen File als das Makro + Ziel
Vielen Dank im vorraus und entschuldigt bitte die Rechtschreibung, bin ziemlich im Stress

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Kopieren statt import?
19.03.2012 23:26:03
fcs
Hallo Chris,
dein Code hat mindestens 2 Probleme:
1. Du schließt die Daten aus der die Daten kopiert werden sollen, bevor der Kopiervorgang abgeschlossen wird. Das mag/kann Excel nicht.
2. Du selektierst eine Spalte (hier Columns("A:A").Select) zum Kopieren. Anschliessend selektierst du im Blatt "data" die Zelle A2 zum Einfügen. Auch das funktioniert nicht. Ganze Spalte können nach dem Kopieren nur eingefügt werden, wenn Spalten selektiert werden oder eine Zelle in der 1. Zeile. Du muss hier den Zellbereich mit den Daten auswählen, um anschließend die Daten ab A2 einfügen zu können.
Beim Arbeiten mit mehreren Dateien/Arbeitsmappen in einem Makro sollte man mit entsprechenden Objektvariablen für die Dateien arbeiten. Dann kann man ohne Activate und Select die Daten relativ problemlos von einer Datei in die andere kopieren.
Nachfolgen mein Vorschlag (ungetestet!) wie es funktionieren sollte.
Gruß
Franz
Sub Test()
Dim Messdaten
Dim wbMessdaten As Workbook
Dim wbBezuege As Workbook
Set wbBezuege = Workbooks("originalbezüge1")
'hier muss irgendwo der Variablen Messdaten der Dateiname zugewiesen werden
Set wbMessdaten = Workbooks.Open(Filename:=Messdaten)
With wbMessdaten.Worksheets(1)
.Columns("A:A").TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=True, Other:=False, _
FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), _
Array(6, 1), Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1), _
Array(12, 1), Array(13, 1)), TrailingMinusNumbers:=True
.Columns("M:M").Delete
'Bereich mit Daten kopieren
.Range(.Cells(1, 1), .Cells.SpecialCells(xlCellTypeLastCell)).Copy
End With
With wbBezuege.Worksheets("data")
.Range("A2").Paste
'oder
.Range("A2").PasteSpecial Paste:=xlPasteValues
End With
wbMessdaten.Close True
Set wbMessdaten = Nothing: Set wbBezuege = Nothing
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige