• Aktualisierte Forenregeln

    Eine kleine Änderung hat es im Bereich Forenregeln unter Abschnitt 2 gegeben, wo wir nun explizit darauf verweisen, dass Forenkommentare in unserer Heftrubrik Leserbriefe landen können.

    Forenregeln


    Vielen Dank

excel: marko automatisch wiederholen

R

ruyven_macaran

Gast
moin, sitze gerade an nem etwas größeren excelfile (3 sheets), in dem jede zweite zeile eine zuviel ist.
n makro, dass den durchschnitt aus zwei zeilen in eine schreibt hab ich jetzt schon hinbekommen (toll - aufzeichnungsfunktion kriegt nicht mal nen spaltenwechsel richtig hin...), aber das einzeln auszuführen dauert eeeewig.
und ich hab keine ahnung, wie ich n makro automatisch bis zum ende der seite wiederhole.

jemand mit mehr ahnung hier?
 
Hmm, du kannst doch dem Makro eine Taste zu weisen!
Die drückst du dann einfach immer die ganze Zeit, das geht doch dann relativ flott, habe sonst so jetzt nichts gefunden!
 
wie sieht das denn aus? so:

Spalte A
5
1
12
5
2
3
8
1
13



und du willst zeile 3, 6, 9.... streichen?
 
Herbboy am 18.12.2007 22:54 schrieb:
wie sieht das denn aus? so:

Spalte A
5
1
12
5
2
3
8
1
13



und du willst zeile 3, 6, 9.... streichen?


so sieht das aus:

Code:
11.12.2007 14:57:45,490	Interval	2,031	2,0243	2,0268	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:46,040	Interval	2,0309	2,0243	2,0269	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:46,490	Interval	2,0309	2,0243	2,0268	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:47,040	Interval	2,0309	2,0243	2,0268	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:47,490	Interval	2,0309	2,0243	2,0268	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:48,040	Interval	2,0309	2,0243	2,0268	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:48,490	Interval	2,031	2,0243	2,0268	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:49,040	Interval	2,031	2,0243	2,0269	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:49,490	Interval	2,0309	2,0243	2,0268	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:50,040	Interval	2,0309	2,0243	2,0268	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:50,490	Interval	2,031	2,0243	2,0268	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:51,040	Interval	2,031	2,0243	2,0269	2,0103	2,0289	2,0069	2,0235	2,0385

und so solls aussehen:
Code:
11.12.2007 14:57:45,490	Interval	2,03095	2,0243	2,02685	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:46,490	Interval	2,0309	2,0243	2,0268	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:47,490	Interval	2,0309	2,0243	2,0268	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:48,490	Interval	2,031	2,0243	2,02685	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:49,490	Interval	2,0309	2,0243	2,0268	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:50,490	Interval	2,031	2,0243	2,02685	2,0103	2,0289	2,0069	2,0235	2,0385
11.12.2007 14:57:51,490	Interval	2,031	2,0243	2,0268	2,0103	2,0289	2,0069	2,0235	2,03855

und taste halten geht zwar prinzipiell, aber bei ~240000 zeilen geht es nicht gerade schnell.
und da ich mit den zeilen (und einigen mehr) später noch andere sachen vorhab, brauch ich ne bessere lösung ;)
 
so, hab mir jetzt genügend basic-kenntnisse zugelegt, um ne schleife draus zu machen.
schneller gehts damit nicht, aber es geht immerhin automatisch (1h 15min für ein 64-65000 zeilen sheet)


für leute, die auch mal vor dem problem stehen:
im vb-editor ein "do until activecell = X" vor das makro , ein "loop" hinters makro (den rest dazwischen vielleicht noch per tabulator einrücken) und schon läuft das makro solange, bis die zelle, in der es starten soll, ein "X" enthält.
da ich bei mir nur positive zahlenwerte im datensatz hab, nehm ich an stelle des X einfach eine 0 und schreibe eben eine solche ganz unten unter die daten - sobald das makro bis dahin vorgedrungen ist, beendet es sich.
(achtung: bei makros, die mehrere zeilen überspringen muss man natürlich darauf achten, dass auch garantiert eine 0 getroffen wird. und vorher unbedingt durchdenken, ob das makro auch wirklich unter allen umständen das richtige macht. wenn es im schlimmsten fall z.b. nicht zum schluss in die ausgangsposition für den nächsten duchlauf springt, kann es einem das ganze dokument unwiederbringlich zerstören)

p.s.: nur weil das program automatisch läuft, läuft es übrigens nicht unabhängig und eigenständig. benutzt man z.b. die zwischenablage im rahmen des makros (copy paste!), dann wird DIE zwischenablage auch vom automatisierten makro benutzt man kann z.b. beim nebenbei surfen nicht mal eben eine zeile kopieren.
(ich werd mal gucken müssen, ob ich jetzt 1-2 computerbaseadressen im dokument habe :ugly: )
 
Zurück