Hallo,
ik ben op zoek naar een code die een deel van de bestandsnaam in een cel plaatst, het liefst in vba.
Ik heb een code voor in de cel:
=DEEL(CEL("bestandsnaam");VIND.SPEC("[";CEL("bestandsnaam"))+15;VIND.SPEC("]";CEL("bestandsnaam"))-VIND.SPEC("[";CEL("bestandsnaam"))-19)
Maar wanneer ik van werkboek verwissel ( in de regel staan er ± 10 open en in alle werkboeken zitten deze code's) blijft deze code overheersen, zodat erin de cel verkeerde tekst komt.
Ik heb verschillende namen zoals bijv: weekoverzicht_01.xls , A1_01.xls en mijn bedoeling is dat ik alleen het nummer in de cel krijg ( 01 ).
Ik hoop dat iemand hier een oplossing voor weet, alvast hartelijke dank.
gr Johan
Het lijkt me op zich geen probleem maar zoals meestal gewenst bij dit soort dingen, plaats een voorbeeld bestandje.
Hallo Edmoor,
ik krijg het niet voor elkaarom een bijlage toe tevoegen. Misschien komt dit omdat ik op een beveiligd netwerk zit
Maar wanneer je deze code:
plaatst in een nieuwe werkmap met als naam "weekoverzicht_01.xls" dan krijg je de waarde van 01 in de betreffende cel.Code:=DEEL(CEL("bestandsnaam");VIND.SPEC("[";CEL("bestandsnaam"))+15;VIND.SPEC("]";CEL("bestandsnaam"))-VIND.SPEC("[";CEL("bestandsnaam"))-19)
Wanneer ik nog een map aanmaak "a1_02.xls"
en plaats daar de code
dan zal in de betreffende cel de waarde van 02 komen te staan.Code:=DEEL(CEL("bestandsnaam");VIND.SPEC("[";CEL("bestandsnaam"))+4;VIND.SPEC("]";CEL("bestandsnaam"))-VIND.SPEC("[";CEL("bestandsnaam"))-8)
Wanneer ik nu weer terug ga naar de werkmap weekoverzicht_01 is de waarde van 01 niet meer juist.
ik hoop dat ik u zo eerst voldoende informatie heb gegeven, als ik thuis ben zal ik proberen als nog een bijlege te sturen.
gr. Johan
ik hem het probleem getackeld
Ik heb in vba de codeGeplaatst zodat in cel J1 de volledige naam komt. (in mijn geval Weekoverzicht_01.xls)Code:Sub Workbook_Open() [Weekoverzicht!J1] = ThisWorkbook.Name End Sub
In een andere cel (bijv: K5) de codegeplaatst zodat alleen het weeknummer er komt te staan 01.Code:=DEEL(J1;15;2)
Dit is echter tekst dus kan er niet mee gerekend worden, dus heb ik cel K4 de code =K5*1 geplaatst, daar heb ik nu een getal waarmee ik kan rekenen.
Ik geef toe een beetje omslachtig, maar voor mij funtioneel genoeg.
![]()
Zonder al die formules
Code:Sub Workbook_Open() [Weekoverzicht!K4].Value = Mid(ThisWorkbook.Name, 15, 2) End Sub
Mvg,
Rudi
Er zijn geen domme vragen, enkel domme antwoorden
Hallo Warme Bakkertje,
dank je wel voor de "eenvoudige" oplossingdit is inderdaad minder omslachtig.
Johan