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

Makro abkürzen

Makro abkürzen
19.05.2005 16:00:17
Eva
Hallo,
gibt es Möglichkeiten den Code zu verkürzen, damit es schneller abläuft?
Gruß
Eva
Dim ztdv As Integer, stdv As Integer
Dim ztmaster As Integer, stmaster As Integer
Dim toolset As Worksheet
Dim docview As Worksheet
Set toolset = Workbooks("Auswertung CB FEE 19052005.xls").Worksheets("ToolsetWF@1st Run Refurb 26.Feb")
Set docview = Workbooks("Auswertung CB FEE 19052005.xls").Worksheets("DocView")
ztdv = 3
stdv = 3
For ztmaster = 5 To 149
'hieran Code für die Farben schließen einzeln if aufdröseln
If toolset.Cells(ztmaster, 99) = "" Or toolset.Cells(ztmaster, 100) = "" Or toolset.Cells(ztmaster, 101) = "" Or toolset.Cells(ztmaster, 102) = "" Or toolset.Cells(ztmaster, 103) = "" Or toolset.Cells(ztmaster, 104) = "" Then
docview.Cells(ztdv, 1) = toolset.Cells(ztmaster, 14) 'area
docview.Cells(ztdv, 2) = toolset.Cells(ztmaster, 171) 'CB name
docview.Cells(ztdv, 3) = toolset.Cells(ztmaster, 17) 'toolcode Kulim
docview.Cells(ztdv, 4) = toolset.Cells(ztmaster, 97) 'PCN
'A vendor
docview.Cells(ztdv, 5) = toolset.Cells(ztmaster, 99) 'CEPS BPA
docview.Cells(ztdv, 6) = toolset.Cells(ztmaster, 100) 'Ammendment
docview.Cells(ztdv, 7) = toolset.Cells(ztmaster, 101) 'TPS
docview.Cells(ztdv, 8) = toolset.Cells(ztmaster, 102) 'TOS200
docview.Cells(ztdv, 9) = toolset.Cells(ztmaster, 103) 'GER
docview.Cells(ztdv, 10) = toolset.Cells(ztmaster, 104) 'TGTS
docview.Cells(ztdv, 11) = toolset.Cells(ztmaster, 105) 'A vendor list price
docview.Cells(ztdv, 12) = toolset.Cells(ztmaster, 106) 'currency
docview.Cells(ztdv, 13) = toolset.Cells(ztmaster, 115) 'vendor name
'B vendor
docview.Cells(ztdv, 15) = toolset.Cells(ztmaster, 117) 'CEPS BPA
docview.Cells(ztdv, 16) = toolset.Cells(ztmaster, 118) 'Ammendment
docview.Cells(ztdv, 17) = toolset.Cells(ztmaster, 119) 'TPS
docview.Cells(ztdv, 18) = toolset.Cells(ztmaster, 120) 'TOS200
docview.Cells(ztdv, 19) = toolset.Cells(ztmaster, 121) 'GER
docview.Cells(ztdv, 20) = toolset.Cells(ztmaster, 122) 'TGTS
docview.Cells(ztdv, 21) = toolset.Cells(ztmaster, 123) 'A vendor list price
docview.Cells(ztdv, 22) = toolset.Cells(ztmaster, 124) 'currency
docview.Cells(ztdv, 23) = toolset.Cells(ztmaster, 133) 'vendor name
' C vendor
docview.Cells(ztdv, 25) = toolset.Cells(ztmaster, 135) 'CEPS BPA
docview.Cells(ztdv, 26) = toolset.Cells(ztmaster, 136) 'Ammendment
docview.Cells(ztdv, 27) = toolset.Cells(ztmaster, 137) 'TPS
docview.Cells(ztdv, 28) = toolset.Cells(ztmaster, 138) 'TOS200
docview.Cells(ztdv, 29) = toolset.Cells(ztmaster, 139) 'GER
docview.Cells(ztdv, 30) = toolset.Cells(ztmaster, 140) 'TGTS
docview.Cells(ztdv, 31) = toolset.Cells(ztmaster, 141) 'A vendor list price
docview.Cells(ztdv, 32) = toolset.Cells(ztmaster, 142) 'currency
docview.Cells(ztdv, 33) = toolset.Cells(ztmaster, 151) 'vendor name
' D vendor
docview.Cells(ztdv, 35) = toolset.Cells(ztmaster, 153) 'CEPS BPA
docview.Cells(ztdv, 36) = toolset.Cells(ztmaster, 154) 'Ammendment
docview.Cells(ztdv, 37) = toolset.Cells(ztmaster, 155) 'TPS
docview.Cells(ztdv, 38) = toolset.Cells(ztmaster, 156) 'TOS200
docview.Cells(ztdv, 39) = toolset.Cells(ztmaster, 157) 'GER
docview.Cells(ztdv, 40) = toolset.Cells(ztmaster, 158) 'TGTS
docview.Cells(ztdv, 41) = toolset.Cells(ztmaster, 159) 'A vendor list price
docview.Cells(ztdv, 42) = toolset.Cells(ztmaster, 160) 'currency
docview.Cells(ztdv, 43) = toolset.Cells(ztmaster, 169) 'vendor name


End If
ztdv = ztdv + 1
Next ztmaster
End Sub

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro abkürzen
19.05.2005 16:18:04
Rudi
Hi,
die zusammenhängenden Zellen in Schleife bearbeiten, With-Rahmen verwenden,
am Anfang Berechnung auf manuell, Events ausschalten, Screenupdating ausschalten
am Ende alles wieder zurück.
mfg Rudi
AW: Makro abkürzen
19.05.2005 16:20:07
Ramses
Hallo
ungetestet, sollte aber irgendwie tun :-)

Sub Eva_Demo()
Dim ztdv As Integer, stdv As Integer
Dim ztmaster As Integer, stmaster As Integer
Dim toolset As Worksheet
Dim docview As Worksheet
Dim chkStr As String
'Zuweisung
Set toolset = Workbooks("Auswertung CB FEE 19052005.xls").Worksheets("ToolsetWF@1st Run Refurb 26.Feb")
Set docview = Workbooks("Auswertung CB FEE 19052005.xls").Worksheets("DocView")
'Variablen
ztdv = 3
stdv = 3
'Schleifenstart
For ztmaster = 5 To 149
'hieran Code für die Farben schließen einzeln if aufdröseln
If Application.WorksheetFunction.CountA(Range(Cells(ztmaster, 99), Cells(ztmaster, 104))) = 0 Then
docview.Cells(ztdv, 1) = toolset.Cells(ztmaster, 14) 'area
docview.Cells(ztdv, 2) = toolset.Cells(ztmaster, 171) 'CB name
docview.Cells(ztdv, 3) = toolset.Cells(ztmaster, 17) 'toolcode Kulim
docview.Cells(ztdv, 4) = toolset.Cells(ztmaster, 97) 'PCN
'A vendor
toolset.Range(Cells(ztmaster, 99), Cells(ztmaster, 115)).Copy docview.Cells(ztdv, 5)
'B vendor
toolset.Range(Cells(ztmaster, 117), Cells(ztmaster, 133)).Copy docview.Cells(ztdv, 15)
' C vendor
toolset.Range(Cells(ztmaster, 135), Cells(ztmaster, 15)).Copy docview.Cells(ztdv, 25)
' D vendor
toolset.Range(Cells(ztmaster, 153), Cells(ztmaster, 169)).Copy docview.Cells(ztdv, 35)
End If
ztdv = ztdv + 1
Next ztmaster
End Sub

Gruss Rainer
Anzeige
AW: Makro abkürzen
19.05.2005 16:34:24
Eva
Hallo,
Makro stoppt beim Range. Müsste ich anders dimensionieren?
Gruß
Eva
AW: Makro abkürzen
19.05.2005 16:40:50
Ramses
Hallo
Könnten es auch noch etwas mehr Informationen sein, oder darf ich mir die Fehler nun auch noch selbst suchen :-( ;-) !
Ich vermute der Fehler liegt in dem fehlenden Verweis auf die andere Mappe
If Application.WorksheetFunction.CountA(toolset.Range(Cells(ztmaster, 99), Cells(ztmaster, 104))) = 0 Then
Gruss Rainer
AW: Makro abkürzen
19.05.2005 16:45:08
Eva
Verzeihung Rainer.
For ztmaster = 5 To 149
'hieran Code für die Farben schließen einzeln if aufdröseln
If Application.WorksheetFunction.CountA(Range(Cells(ztmaster, 99), Cells(ztmaster, 104))) = 0 Then
----klappt
docview.Cells(ztdv, 4) = toolset.Cells(ztmaster, 97) 'PCN
'A vendor
toolset.Cells(ztmaster, 115).Copy docview.Cells(ztdv, 13) 'vendor name
toolset.Range(Cells(ztmaster, 99), Cells(ztmaster, 106)).Copy docview.Cells(ztdv, 5)
----Hier stoppt der Code (Methode Range für Objekt fehlgeschlagen)
End If
ztdv = ztdv + 1
Next ztmaster
Anzeige
AW: Makro abkürzen
19.05.2005 16:49:58
Rudi
toolset.Range(toolset.Cells(ztmaster, 99), toolset.Cells(ztmaster, 106)).Copy docview.Cells(ztdv, 5)
mfg Rudi
AW: Makro abkürzen
19.05.2005 16:59:37
Ramses
Hallo
Wenn schon, dann machen wir das aber ganz richtig dann :-)
Option Explicit

Sub Eva_Demo()
Dim ztdv As Integer, stdv As Integer
Dim ztmaster As Integer, stmaster As Integer
Dim toolset As Worksheet
Dim docview As Worksheet
Dim chkStr As String
'Zuweisung
Set toolset = Workbooks("Auswertung CB FEE 19052005.xls").Worksheets("ToolsetWF@1st Run Refurb 26.Feb")
Set docview = Workbooks("Auswertung CB FEE 19052005.xls").Worksheets("DocView")
'Variablen
ztdv = 3
stdv = 3
'Schleifenstart
For ztmaster = 5 To 149
'hieran Code für die Farben schließen einzeln if aufdröseln
With toolset
If Application.WorksheetFunction.CountA(.Range(.Cells(ztmaster, 99), .Cells(ztmaster, 104))) = 0 Then
docview.Cells(ztdv, 1) = .Cells(ztmaster, 14) 'area
docview.Cells(ztdv, 2) = .Cells(ztmaster, 171) 'CB name
docview.Cells(ztdv, 3) = .Cells(ztmaster, 17) 'toolcode Kulim
docview.Cells(ztdv, 4) = .Cells(ztmaster, 97) 'PCN
'A vendor
.Range(.Cells(ztmaster, 99), .Cells(ztmaster, 115)).Copy docview.Cells(ztdv, 5)
'B vendor
'Ersetzt die nachfolgende Liste
.Range(.Cells(ztmaster, 117), .Cells(ztmaster, 133)).Copy docview.Cells(ztdv, 15)
' C vendor
'Ersetzt die nachfolgende Liste
.Range(.Cells(ztmaster, 135), .Cells(ztmaster, 15)).Copy docview.Cells(ztdv, 25)
' D vendor
.Range(.Cells(ztmaster, 153), .Cells(ztmaster, 169)).Copy docview.Cells(ztdv, 35)
'Zählvariable nur aufaddieren, wenn IF tatsächlich ausgeführt wurde
'sonst gibt's viele Leerzeilen  in DocView
ztdv = ztdv + 1
End If
End With
Next ztmaster
End Sub

Gruss Rainer
Anzeige
AW: Makro abkürzen
19.05.2005 17:01:32
Rudi
Habe ich schon in meiner ersten Antwort vorgeschlagen With-Rahmen verwenden.
mfg Rudi
AW: Makro abkürzen
19.05.2005 16:45:36
Holger
If Application.WorksheetFunction.CountA(toolset.Range(Cells(ztmaster, 99), Cells(ztmaster, 104))) = 0 Then
Funktioniert nicht! Solltest du als Vielantworter eigentlich wissen.
mfg Holger
false
Eva
Hallo Holger,
das passt sogar.
Gruß
Eva
AW: Makro abkürzen
19.05.2005 16:52:05
Ramses
Hallo
Soll ich dir die Beispieldateien schicken :-) ?
Wenn es nicht funktionieren würde, hätte ich es nicht geschrieben.
Einzige Voraussetzung, die Mappe "toolset" muss aktiviert sein.
Gruss Rainer
AW: Makro abkürzen
19.05.2005 16:59:11
Holger
Entschuldigung, habe ich überlesen. Siehe Vorschlag Rudi.
mfg Holger
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige