![]() |
Betrifft: VBA Code 13x hintereinander ausführen
von: Max
Geschrieben am: 01.08.2014 12:38:20
Hallo meine schlauen Füchse,
ich habe nochmal eine Frage.
Ich habe einen Makro geschrieben:
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Cells(65000, 3).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("c18")
... ganz viele weitere Übertragungen
Dieser Makro soll nach Knopfdruck 14x ausgeführt werden. Ich habe keine Lust, jeden einzelnen Teil des Makros per Copy-Paste 14x hintereinander zu kopieren, geht das evtl. auch einfacher??
Beste Grüße und vielen Dank im Voraus!
![]() ![]() |
Betrifft: AW: VBA Code 13x hintereinander ausführen
von: Hajo_Zi
Geschrieben am: 01.08.2014 12:42:41
warum schreiben wir Beiträge wenn Du Sie doch nicht beachtest
Sub mal()
Dim InI As Integer
For InI = 1 To 23
Cells(65000, InI).End(xlUp).Offset(1, 0) = Worksheets("upload_data").Cells(18, InI + 1)
Next
End Sub
![]() ![]() |
Betrifft: AW: VBA Code 13x hintereinander ausführen
von: Max
Geschrieben am: 01.08.2014 12:59:42
Okay, vielen Dank allen erstmal. Würde ich auf anhieb das finden was ich suche, würde ich gewiss hier nicht nachfragen ;)
Mein Wunsch wäre folgender, vielleicht habe ich das nicht ganz präzise formuliert. Mein Code sieht derzeit wiefolgt aus:
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Cells(65000, 1).End(xlUp).Offset(1, 0).Select
Selection = Worksheets("upload_data").Range("b18")
Das ist 14x derselbe "Befehl" der ausgeführt werden soll. Das ganze möchte ich aber eben nicht so 14x hintereinander programmiert haben, sondern es soll 14x ausgeführt werden und anschließend geht man im Makro weiter, weil noch weitere 14xEr Schleifen folgen.
Grüße Max ;)
![]() ![]() |
Betrifft: AW: VBA Code 13x hintereinander ausführen
von: Hajo_Zi
Geschrieben am: 01.08.2014 13:13:45
Hallo Max,
Du hast Extra im ersten Beitrag anderen Code gepostet, da Du den Code selber an Deine Bedingungen anpassen möchtest, also mache es auch. Ich bin raus.
Gruß Hajo
![]() ![]() |
Betrifft: AW: VBA Code 13x hintereinander ausführen
von: Daniel
Geschrieben am: 01.08.2014 12:49:25
Hi
um den selben Codeteil mehrfach hintereinander auszuführen, verwendet man eine For-Next-Schleife.
Müssen Werte variiert werden, so berechnet man diese aus dem Schleifenzähler (hier die Spalte des zu kopierenden Bereichs)
Sub Makro1 Dim x as long for x = 0 to 13 Cells(65000, 1).End(xlUp).Offset(1, 0) = Worksheets("upload_data").Range("b18").Offset(0, x) _ .value Next End SubIn diesem Fall würde aber folgende Befehle ausreichen, um alle 14 Werte auf einmal zu kopieren:
Worksheets("upload_data").Range("B18").Resize(1, 14).Copy Cells(Rows.Count, 1).End(xlup).Offset(1, 0).PasteSpecial xlpastevalues, Transpose:=True
![]() ![]() |
Betrifft: Zu den BasisKenntnissen JEDER ...
von: Luc:-?
Geschrieben am: 01.08.2014 12:50:18
…PgmierSprache gehören auch zyklische, d.h. wiederkehrende, PgmAbläufe, auch (Pgm-)Schleifen genannt, Max!
Gruß, Luc :-?
![]() ![]() |
Betrifft: AW: VBA Code 13x hintereinander ausführen
von: Max
Geschrieben am: 01.08.2014 13:15:52
Hat sich erledigt!
Entschuldige bitte Hajo!
![]() |