Copy mit XLPaste / noch ein paar Kleinigkeiten
30.06.2008 08:56:27
Thomas3
ich habe eine Verständnisfrage und benötige bei einer Sache Hilfe.
Hier erst einmal die Info und der Code.
Sinn des Makros : Per Schleife wird aus einer Datei ( = thisworkbook ) heraus ein Order durchlaufen, die sich darin befindlichen Exceldatei geöffnet ( = activeworkbook ), ein Teilbereich ausgelesen, in Thisworkbook hineinkopiert, dann werden die hineinkopierten Zeilen durchgezählt, das activeworkbook geschlossen und die Schleife fängt von vorne an.
lzeile = ActiveWorkbook.Sheets("Registration of participants").Cells(Rows.Count, 3).End(xlUp).Row
anzahl_zeilen = lzeile - 12
Range(Cells(13, 2), Cells(lzeile, 15)).Copy
ThisWorkbook.Worksheets("Liste").Activate
lzeileTW = Cells(Rows.Count, 1).End(xlUp).Row
Cells(lzeileTW + 1, 2).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Workbooks(suche).Close
For I = lzeileTW To anzahl_zeilen
Cells(I + 1, 1) = I
Next I
End If
und jetzt meine Fragen :
- Wenn ich aus dem Activeworkbook einen Bereich kopieren will mittels .Copy und diesen durch Destination:=ThisWorkbook~ einsetzen möchte. Wie hänge ich daran den Befehl, dass er nur die Werte einsetzen muß ? So, wie ich es geschrieben habe, geht das nur über Selection. Ich habe mal gehört, dass durch meine Methode das Teil "langsamer" wird.
- "Suche" ist meine zu öffnende Exceldatei, die da voll heißen würde c:\Ordner\Namensliste\xy.xls. Das xy.xls wird durch die Schleife ermittelt, der Rattenschwanz vorweg über ein anderes Verfahren. Was muß ich schreiben, dass diese Datei - die in diesem moment meine ActiveWorkbook ist - geschlossen wird. Mit meinem Befehl geht das nicht. Da bekommt er einen Laufzeitfehler.
- Was muß ich tun, dass Excel NICHT beim Schließen die Meldung : "Sie haben viel Zeug in der Zwischenablage. Wollen Sie das behalten?" bringt. Hier einen Befehl einbauen, er soll Meldungen unterdrücken ?
- Letzte Frage. Wenn die Zeilen hinein kopiert wurden, soll eine Schleife die Zeilen durchnummerieren. Das brauche ich für später. Nur, mal macht er das, mal nicht. Woran könnte das liegen ?
Ziemlich viele Fragen. Ich bitte das zu entschuldigen und freue mich für jeden Hinweis.
Ganz herzliche Grüße und Danke vorab
Thomas