• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Excel Macro verwijzen naar een (veranderend) bestand.

Status
Niet open voor verdere reacties.

RickL93

Nieuwe gebruiker
Lid geworden
28 sep 2016
Berichten
3
Hallo,

Ik ben bezig met een macro in excel die verwijst naar een ander excel bestand. Heel snel uitgelegd: Elke maand heb ik een overzicht van data en die vergelijk ik met die van vorige maand (en dat schuift dus elke maand op).

Is het mogelijk een macro te maken dat dit vanzelf gaat? Het verwijzen zelf lukt me wel maar hoe krijg ik het zover dat die elke maand verwijst naar het juiste bestand?

Het bestand waar naar verwezen moet worden staat steeds in een andere map. (Elke maand komt er een nieuwe map bij, nu staat die bijvoorbeeld in map 2016_08, maar volgende maand als het oktober is zal ik willen verwijzen naar het bestand dat staat in de map 2016_09).

Ik hoop dat de uitleg een beetje begrijpbaar is.

Groet
 
Rick,

welkom op Helpmij.nl.

Het is een goede gewoonte om een vraag te illustreren a.d.h.v. een excel(voorbeeld)bestand zonder "gevoelige" informatie.
Dus, laat eens zien wat je al hebt.
 
Dit is de vba code wat ik tot nu toe heb:
Code:
    range("I20:J20").Select
    ActiveCell.FormulaR1C1 = "='[20160831_test.xlsm]Sheet1)'!R36C3*1000"
    range("I22:J22").Select
    ActiveCell.FormulaR1C1 = "='[20160831_test.xlsm]Sheet1)'!R351C3*1000"
    range("I24:J24").Select
    ActiveCell.FormulaR1C1 = "='[20160831_test.xlsm]Sheet1)'!R384C3*1000"
    range("I26:J26").Select
    ActiveCell.FormulaR1C1 = "='[20160831_test.xlsm]Sheet1)'!R417C3*1000"
    range("K20:L20").Select
    ActiveCell.FormulaR1C1 = "='[20160831_test.xlsm]Sheet1)'!R36C5*1000"
    range("K22:L22").Select
    ActiveCell.FormulaR1C1 = "='[20160831_test.xlsm]Sheet1)'!R351C5*1000"
    range("K24:L24").Select
    ActiveCell.FormulaR1C1 = "='[20160831_test.xlsm]Sheet1)'!R384C5*1000"
    range("K26:L26").Select
    ActiveCell.FormulaR1C1 = "='[20160831_test.xlsm]Sheet1)'!R417C5*1000"
    range("N20:O20").Select
    ActiveCell.FormulaR1C1 = "='[20160831_test.xlsm]Sheet1)'!R36C8*1000"
    range("N22:O22").Select
    ActiveCell.FormulaR1C1 = "='[20160831_test.xlsm]Sheet1)'!R351C8*1000"
    range("N24:O24").Select
    ActiveCell.FormulaR1C1 = "='[20160831_test.xlsm]Sheet1)'!R384C8*1000"
    range("N26:O26").Select
    ActiveCell.FormulaR1C1 = "='[20160831_test.xlsm]Sheet1)'!R417C8*1000"

Waarbij het het naar verwezen bestand dus 20160831 heet . (Ik doe nu alle cellen apart, kan ongetwijfeld ook simpeler maar dat maakt niet zo veel uit). Waar het dus om gaat is dat ik volgende maand graag wil dat het bestand 20160831 wordt vervangen door 20160931 enzovoort. Is dat mogelijk? Het bestand 20160931 staat dan alleen wel in een andere map.

Als het nodig is een excel bestandje toe te voegen zal ik dat zo even maken.
 
Rick,

niet om vervelend te doen, maar dit is geen excel(voorbeeld)bestand....
 
Dat snap ik uiteraard ook wel, maar ik zie vaak codes geplaatst worden dus ik dacht misschien lukt het daarmee ook wel. Ik heb nu twee bestandjes geplaatst. Het bestand test20160916 is mijn bestand met de macro, die dus verwijst naar test20160831.
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan