Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Laufzeitfehler 9, Index außerhalb des bereichs

Laufzeitfehler 9, Index außerhalb des bereichs
20.12.2012 15:44:39
Riccardo
Hallo Leute,
Ich habe 5 Arbeitsblätter. jetzt soll das Makro auf dem dritten von Zeile 2005 bis 2120 die Werte mit den ersten 3 blättern vergleichen, sobald ein Treffer erscheint (der erscheint mit 100%iger sicherheit), dann werden die Werte von dem Blatt, auf dem es gefunden wurde in blatt nummer 5 ("Exportformatierung") kopiert.
mein derzeitiger Code:

If (Target.Address = "$E$2004") Then
Worksheets("Exportformatierung").Range("A1:C250").ClearContents
For k = 1 To 250
For i = 2005 To 2110
For j = 1 To 75
If (ActiveSheet.Cells(i, 3).Value = Worksheets("NovaAlert")._
Cells(j, 1).Value) Then
Worksheets("Exportformatierung").Cells(k, 1) = Worksheets_
("NovaAlert").Cells(j, 1).Value
Worksheets("Exportformatierung").Cells(k, 2) = Worksheets_
("NovaAlert").Cells(j, 2).Value
Worksheets("Exportformatierung").Cells(k, 3) = Worksheets_
("NovaAlert").Cells(j, 3).Value
Else
If (ActiveSheet.Cells(i, 3).Value = Worksheets("NovaAlert _
Basic").Cells(j,1).Value) Then
Worksheets("Exportformatierung").Cells(k, 1) = Worksheets_
("NovaAlert Basic").Cells(j, 1).Value
Worksheets("Exportformatierung").Cells(k, 2) = Worksheets_
("NovaAlert Basic").Cells(j, 2).Value
Worksheets("Exportformatierung").Cells(k, 3) = Worksheets_
("NovaAlert Basic").Cells(j, 3).Value
Else
If (ActiveSheet.Cells(i, 3).Value = Worksheets_
("Handeslware").Cells(j,1).Value) Then
Worksheets("Exportformatierung").Cells(k, 1) =_
Worksheets("Handeslware").Cells(j, 1).Value
Worksheets("Exportformatierung").Cells(k, 2) =_
Worksheets("Handeslware").Cells(j, 2).Value
Worksheets("Exportformatierung").Cells(k, 3) =_
Worksheets("Handeslware").Cells(j, 3).Value
End If
End If
End If
Next j
Next i
Next k
End If
dabei tritt jetzt ein Laufzeitfehler auf, dass mein Index außerhalb des erlaubten Bereiches liegt. Beim Debuggen meckert er bei der innersten If-Anweisung...
Woran liegt das? - Hat jemand eine Idee?

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler 9, Index außerhalb des bereichs
20.12.2012 16:16:13
Rudi
Hallo,
ich kann mir nicht vorstellen, das das so heißt: Worksheets("Handeslware")
Gruß
Rudi

Handeslware oder Handelsware ?
20.12.2012 16:23:16
NoNet
Hallo Riccardo,
ich kenne Deine Mappe nicht und shcon gar nicht die enthaltenen Blätter.
Es fällt mir jedoch auf, dass das Blatt "Handeslware" referenziert wird, ist das beabsichtigt oder soltle es nicht doch "Handellware" heissen ?
Bei mehrfacher Nennung von Blättern empfiehlt es sich übrigens, mit Objektvariablen zu arbeiten, z.B. folgendermassen (Code nicht auf Funktionalität oder sinnhaftigkeit geprüft !) :
Sub Beispiel()
Dim wsExport As Worksheet, wsHandelsware As Worksheet, _
wsNova As Worksheet, wsNovaBasic As Worksheet
Set wsExport = Worksheets("Exportformatierung")
Set wsHandelsware = Worksheets("Handelsware")
Set wsNova = Worksheets("NovaAlert")
Set wsNovaBasic = Worksheets("NovaAlert Basic")
If (Target.Address = "$E$2004") Then
wsExport.Range("A1:C250").ClearContents
For k = 1 To 250
For i = 2005 To 2110
For j = 1 To 75
If (ActiveSheet.Cells(i, 3).Value = wsNova.Cells(j, 1).Value) Then
wsExport.Cells(k, 1) = wsNova.Cells(j, 1).Value
wsExport.Cells(k, 2) = wsNova.Cells(j, 2).Value
wsExport.Cells(k, 3) = wsNova.Cells(j, 3).Value
Else
If (ActiveSheet.Cells(i, 3).Value = wsNovaBasic.Cells(j, 1).Value) Then
wsExport.Cells(k, 1) = wsNovaBasic.Cells(j, 1).Value
wsExport.Cells(k, 2) = wsNovaBasic.Cells(j, 2).Value
wsExport.Cells(k, 3) = wsNovaBasic.Cells(j, 3).Value
Else
If (ActiveSheet.Cells(i, 3).Value = wsHandelsware.Value) Then
wsExport.Cells(k, 1) = handelsware.Cells(j, 1).Value
wsExport.Cells(k, 2) = handelsware.Cells(j, 2).Value
wsExport.Cells(k, 3) = handelsware.Cells(j, 3).Value
End If
End If
End If
Next j
Next i
Next k
End If
End Sub
Die Blattnamen können nun ganz einfach oben in den SET Anweisungen angepasst werden !
Gruß, NoNet

Anzeige
Schreibfehler und Handelsware ?
20.12.2012 16:25:49
NoNet
Hi @ll,
auch ich bin nicht frei von Schreibfehlern, wie ihr in meinem obigen Beitrag sehen könnt ;-)
Die zahlreichen Fehler könnt ihr bitte als vorzeitiges Weihnachtsgeschenk ansehen und behalten....
...Nach dem Weltuntergang wird ohnehin alles anders ;-D
Gruß, NoNet

Anzeige
AW: Schreibfehler und Handelsware ?
21.12.2012 07:12:55
Riccardo
... peinlich ^^
Ich habe zwar gefühlte tausend mal auf Schreibfehler geprüft, aber übersehen hab ich das dennoch.
Danke :)
und danke für den Hinweis mit den Objektvariablen :)
VG
Riccardo
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige