Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
680to684
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
680to684
680to684
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Ablauf verbesssern

Ablauf verbesssern
12.10.2005 23:40:09
achim
Hallo Excel Gemeinschaft
Mein Ablauf funzt (durch hilfe von Harald E.)bis auf den Punkt AutoFill. Wer kann verbessern?
Set ziel = Workbooks("DienstplanMV34.xls").Sheets("Einteiler")
Lrow = ziel.Cells(Rows.Count, 4).End(xlUp).Row
anzd = WorksheetFunction.CountA(Range("D2:D" & Lrow))

Set meister = Workbooks("DienstplanMaster.xls").Sheets("DienstplanMaster")

Range("B:B").Find("", LookAt:=xlWhole).Offset(-1, 0).Select
Range(ActiveCell(), ActiveCell.Offset(0, 15)).Select 'B2:Q2

ce = ActiveCell.Row
Ab diesen Punkt brauche ich eine Verbesserung!!
ActiveCell.AutoFill Destination:=Range(anzd), Type:=xlFillDefault

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ablauf verbesssern
13.10.2005 09:15:14
Harald
Moin nochmal,
die Lösung stand im vorherigen Thread ;-))
ce = ActiveCell.Row
ActiveCell.AutoFill Destination:=Range("C" & ce & ":C" & anzd), Type:=xlFillDefault
Gruß
Harald
AW: Ablauf verbesssern
13.10.2005 10:08:46
achim
Hallo Harald
Ich bekomme immer die Meldung "Die autoFill-Methode des ramges-Objektes konnte nicht ausgeführt werden.
Kannst du oder jemand anders das nochmal prüfen?
Gruß
Achim h.
AW: Ablauf verbesssern/korrektur
13.10.2005 10:10:50
achim
Hallo Harald
Ich bekomme immer die Meldung "Die AutoFill-Methode des Range-Objektes konnte nicht ausgeführt werden.
Kannst du oder jemand anders das nochmal prüfen?
Gruß
Achim h.
Anzeige
AW: Ablauf verbesssern/korrektur
13.10.2005 11:55:40
Harald
Hi nochmal,
offensichtlich ist der Bereich B:Q nach unten zu füllen.
Wenn ja, dann so.
Range(ActiveCell(), ActiveCell.Offset(0, 15)).Select
ce = ActiveCell.Row
Selection.AutoFill Destination:=Range("B" & ce & ":Q" & anzd), Type:=xlFillDefault
Gruß
Harald
AW: Ablauf verbesssern
13.10.2005 21:39:17
achim
Hallo Harald
Deine Vermutung ist richtig. Die Aktiven Zellen im DienstplanMaster sind nach dem makieren B2:Q2 wobei der Anfasser sich bei Q2 befindet. (also, wo der Mauszeiger vom großen Kreutz sobald Anfasser erreicht zum kleinen Kreutz wird)
Problem!!
Er macht AutoFill nicht nach unten soviel wie vorher gezählt sondern geht nach oben. Komisch meinst du nicht auch?
Ich stelle nochmal den von mir auf deine Anregung überarbeiteten Tread ein.

Sub StartDatenAusMV34()
Dim strPfad As String
strPfad = ThisWorkbook.Path & "\" & "DienstplanMV34.xls"
Workbooks.Open strPfad, Password:="KUFAP"
Windows("DienstplanMaster.xls").Activate
Sheets("DienstplanMaster").Activate
Range("A2:Q3000").Select
Selection.ClearContents
Range("B:B").Find("", LookAt:=xlWhole).Offset(0, 0).Select
ActiveCell.Offset(0, 0).FormulaR1C1 = "=LEFT([DienstplanMV34.xls]Einteiler!RC2,25)"
ActiveCell.Offset(0, 1).FormulaR1C1 = "=LEFT([DienstplanMV34.xls]Einteiler!RC3,25)"
ActiveCell.Offset(0, 2).FormulaR1C1 = "=SUM([DienstplanMV34.xls]Einteiler!RC4)"
ActiveCell.Offset(0, 3).FormulaR1C1 = "=LEFT([DienstplanMV34.xls]Einteiler!RC5,25)"
ActiveCell.Offset(0, 4).FormulaR1C1 = "=LEFT([DienstplanMV34.xls]Einteiler!RC6,25)"
ActiveCell.Offset(0, 5).FormulaR1C1 = "=Left([DienstplanMV34.xls]Einteiler!RC7,25)"
ActiveCell.Offset(0, 6).FormulaR1C1 = "=SUM([DienstplanMV34.xls]Einteiler!RC8)"
ActiveCell.Offset(0, 7).FormulaR1C1 = "=SUM([DienstplanMV34.xls]Einteiler!RC9)"
ActiveCell.Offset(0, 8).FormulaR1C1 = "=LEFT([DienstplanMV34.xls]Einteiler!RC10,25)"
ActiveCell.Offset(0, 9).FormulaR1C1 = "=LEFT([DienstplanMV34.xls]Einteiler!RC11,25)"
ActiveCell.Offset(0, 10).FormulaR1C1 = "=SUM([DienstplanMV34.xls]Einteiler!RC12)"
ActiveCell.Offset(0, 11).FormulaR1C1 = "=LEFT([DienstplanMV34.xls]Einteiler!RC13,25)"
ActiveCell.Offset(0, 12).FormulaR1C1 = "=LEFT([DienstplanMV34.xls]Einteiler!RC14,25)"
ActiveCell.Offset(0, 13).FormulaR1C1 = "=LEFT([DienstplanMV34.xls]Einteiler!RC15,25)"
ActiveCell.Offset(0, 14).FormulaR1C1 = "=LEFT([DienstplanMV34.xls]Einteiler!RC16,25)"
ActiveCell.Offset(0, 15).FormulaR1C1 = "=LEFT([DienstplanMV34.xls]Einteiler!RC17,25)"
Set ziel = Workbooks("DienstplanMV34.xls").Sheets("Einteiler")
Lrow = ziel.Cells(Rows.Count, 4).End(xlUp).Row
anzd = WorksheetFunction.CountA(Range("D2:D" & Lrow))
Set meister = Workbooks("DienstplanMaster.xls").Sheets("DienstplanMaster")
Range("B:B").Find("", LookAt:=xlWhole).Offset(-1, 0).Select
Range(ActiveCell(), ActiveCell.Offset(0, 15)).Select 'B2 bis Q2 makieren
ce = ActiveCell.Row
'Weiterhin das Problemkind
Selection.AutoFill Destination:=Range("B" & ce & ":Q" & anzd), Type:=xlFillDefault
End Sub

Anzeige
AW: Ablauf verbesssern
14.10.2005 07:51:29
harald
Moin,
Wenn er nach oben ausfüllt, kann anzd nur kleiner sein als ce
lass dir mal direkt unter
anzd = WorksheetFunction.CountA(Range("D2:D" & Lrow))
den Wert anzeigen.
Also MsgBox anzd
und setze eine Zeile darunter den Haltepunkt.
Dann alles zurücksetzen und die CountA Funktion
anzd = WorksheetFunction.CountA(ziel.Range("D2:D" & Lrow))
auf die Mappe ziel ausrichten.
Das dürfte dann die Variable anzd mit dem richtigen Wert füllen, somit wird anzd auch größer als ce und autofill füllt nach unten.
Gruß
Harald
AW: Ablauf verbesssern
14.10.2005 13:59:39
achim
Hallo Harald
Ich bin begeistert!! Alles hat nun geklappt!!!!:-):-)
Nochmals vielen, vielen DDDDDDDDDDDDaaaaaaankkkkkkk für die Unterstützung, Beratung
und nun kann ich die Großbaustelle weiter bearbeiten.
Gruß aus dem Ruhrgebiet.
Achim h.
Anzeige
Merci für die Rückmeldung
14.10.2005 14:17:12
Harald
Schönes WE und Gruß von der Saar
Harald

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige