macro probleem, fout 9 tijdens uitvoering - het subscript valt buiten bereik

Status
Niet open voor verdere reacties.

steven1973

Nieuwe gebruiker
Lid geworden
4 jan 2019
Berichten
3
Hallo,

mijn probleem is dat ik de foutmelding in het onderwerp krijg in verschillende macro's.
bv deze hieronder getoond.

Bij foutopsporing wordt deze lijn als fout gegeven:

Windows(Bronbestand1).Activate

Iemand een oplossing aub?

Alvast bedankt,
groeten, Steven



Code:
Sub kopie_naar_LevExcel_WINTER_2018()
'==============================================================================
' Kopieer gegevens van aantallenblad Excel naar leveranciers Excel
'==============================================================================
'!OPGEPAST! Je dient telkens naam van bronbestand en doelbestand in te vullen
'           Let ook zeker op de bestandsextensie (.xls of .xlsx)

    'bepaal het bronbestand en doelbestand met behulp van invoervensters + eerste en laatste rij in aantallenblad
    Dim Bronbestand1 As String
    Dim Doelbestand1 As String
    Dim Rij_Eerst As Integer
    Dim Rij_Laatst As Integer
    Dim Rij_Verschil As Integer
    
    Bronbestand1 = InputBox("Wat is volledige naam van AANTALLENBLAD bestand? (incl. extensie) Dit bestand moet geopend zijn!")
    Rij_Eerst = InputBox("Wat is het rijnummer van eerste rij die u wil kopiëren?")
    Rij_Laatst = InputBox("Wat is het rijnummer van laatste rij die u wil kopiëren?")
    Doelbestand1 = InputBox("Wat is volledige naam van LEVERANCIER bestand? (incl. extensie) Dit bestand moet geopend zijn!")
     
    Rij_Verschil = (Rij_Laatst - Rij_Eerst) + 10
    
    Application.ScreenUpdating = False
     
    'selecteer en kopieer artikelnummers
    Windows(Bronbestand1).Activate
    Range("A" & Rij_Eerst, "AR" & Rij_Laatst).MergeCells = False
    Range("A" & Rij_Eerst, "A" & Rij_Laatst).Select
    Selection.Copy
    Windows(Doelbestand1).Activate
    Range("A10").Select
    Selection.PasteSpecial Paste:=xlPasteValues
    
    'selecteer en kopieer omschrijving
    Windows(Bronbestand1).Activate
    Selection.Offset(, 2).Select
    Selection.Copy
    Windows(Doelbestand1).Activate
    Range("B10").Select
    Selection.PasteSpecial Paste:=xlPasteValues
    
    'selecteer en kopieer leveranciersreferentie
    Windows(Bronbestand1).Activate
    Selection.Offset(, 2).Select
    Selection.Copy
    Windows(Doelbestand1).Activate
    Range("I10").Select
    Selection.PasteSpecial Paste:=xlPasteValues
    
    'selecteer en kopieer artikelprijs
    Windows(Bronbestand1).Activate
    Selection.Offset(, 1).Select
    Selection.Copy
    Windows(Doelbestand1).Activate
    Range("J10").Select
    Selection.PasteSpecial Paste:=xlPasteValues
    
    'selecteer en kopieer gewicht
    Windows(Bronbestand1).Activate
    Selection.Offset(, 5).Select
    Selection.Copy
    Windows(Doelbestand1).Activate
    Range("Y10").Select
    Selection.PasteSpecial Paste:=xlPasteValues
    
    'selecteer en kopieer intrastat
    Windows(Bronbestand1).Activate
    Selection.Offset(, 1).Select
    Selection.Copy
    Windows(Doelbestand1).Activate
    Range("Z10").Select
    Selection.PasteSpecial Paste:=xlPasteValues
   
    'selecteer en kopieer masterdoos gegevens
    Windows(Bronbestand1).Activate
    Selection.Offset(, 18).Resize(, 6).Select
    Selection.Copy
    Windows(Doelbestand1).Activate
    Range("AB10").Select
    Selection.PasteSpecial Paste:=xlPasteValues
    Selection.HorizontalAlignment = xlCenter
    Selection.VerticalAlignment = xlCenter
          
    'selecteer en kopieer innerdoos gegevens
    Windows(Bronbestand1).Activate
    Selection.Offset(, 7).Select
    Selection.Copy
    Windows(Doelbestand1).Activate
    Range("AI10").Select
    Selection.PasteSpecial Paste:=xlPasteValues
    Selection.HorizontalAlignment = xlCenter
    Selection.VerticalAlignment = xlCenter
    
    'selecteer en kopieer materiaal
    Windows(Bronbestand1).Activate
    Selection.Offset(, 7).Resize(, 10).Select
    Selection.Copy
    Windows(Doelbestand1).Activate
    Range("AV10").Select
    Selection.PasteSpecial Paste:=xlPasteValues
            
    'selecteer en kopieer minimum
    Windows(Bronbestand1).Activate
    Range("BB" & Rij_Eerst, "BB" & Rij_Laatst).Select
    Selection.Copy
    Windows(Doelbestand1).Activate
    Range("AO10").Select
    Selection.PasteSpecial Paste:=xlPasteValues
    
    'selecteer en kopieer bestelling
    Windows(Bronbestand1).Activate
    Selection.Offset(, 1).Select
    Selection.Copy
    Windows(Doelbestand1).Activate
    Range("X10").Select
    Selection.PasteSpecial Paste:=xlPasteValues
    
    'selecteer en kopieer artikel afmetingen
    Windows(Bronbestand1).Activate
    Range("H" & Rij_Eerst, "H" & Rij_Laatst).Resize(, 3).Select
    Selection.Copy
    Windows(Doelbestand1).Activate
    Range("BJ10").Select
    Selection.PasteSpecial Paste:=xlPasteValues
         
    'Voeg master CBM toe
    Range("AA10").FormulaR1C1 = "=(RC[1]*RC[2]*RC[3])/1000000"
    Set SourceRange = Range("AA10")
    Set fillRange = Range("AA10", "AA" & Rij_Verschil)
    SourceRange.AutoFill Destination:=fillRange
    
    'Voeg inner CBM toe
    Range("AH10").FormulaR1C1 = "=(RC[1]*RC[2]*RC[3])/1000000"
    Set SourceRange = Range("AH10")
    Set fillRange = Range("AH10", "AH" & Rij_Verschil)
    SourceRange.AutoFill Destination:=fillRange
         
    Application.ScreenUpdating = True
    [A10].Select
          
End Sub
 
Laatst bewerkt door een moderator:
Goedemorgen Steven,

ik heb je macro getest en ik krijg die foutmelding niet. Ben je zeker van dejuiste invoer in de inputbox?
 
Goedemorgen Sjon,
Bedankt voor het testen.
Op mijn laptop werkt het ook terug.
Maar ik ben in China om training te geven aan een paar collega's, en op hun pc's lukt het niet. Altijd diezelfde foutmelding.
Ik gebruik exact dezelfde bestanden en ze hebben ook Office 2016.
Heel vreemd.
Misschien ergens een instelling in Excel die bij hun anders staat?
 
Wellicht dat dit helpt:

Code:
Workbooks(Bronbestand1).Activate
 
Ok, probeer ik maandag eens op hun pc.
Ik laat iets weten dan.
Goed weekend.
 
Maar dan nog:

- Vermijd samengevoegde cellen in VBA
- Vermijd 'Select', 'Selection' en 'Activate' in VBA
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan