[Excel] Externe cellinhoud refereren aan interne cell

Pagina: 1
Acties:
  • 294 views sinds 30-01-2008

Acties:
  • 0 Henk 'm!

  • Allubz
  • Registratie: Februari 2006
  • Laatst online: 02-09 13:43
Zo, dat duurde even voordat ik die topicnaam goed had neergezet.

Ik zit vandaag voor het eerst sinds tijden weer hard met excel te werken op m'n sprankelnieuwe baan. Er doet zich nu een klein probleem voor: M'n baas kent Excel dus wel een beetje en wil graag dat ik een stuk of 250-300x een row ga selecteren, en het product nummer laten vervangen voor een ander product nummer, waarna de cellen met de oa. de kosten informatie automatisch worden geupdate omdat de cellen zelf verwijzen naar het toebehordende externe bestand van het product (deze link word dus geupdate als ik zoek / vervang (productcode).

Dit is nogal veel werk vind ik, dus ik dacht, kan het ook zo:
A B
1 [Productcode] [x:\ A1.xls -celopgaaf]
2 [Productcode] [x:\ A2.xls -celopgaaf]

De A's kan ik zelf invoeren. En de in B verwijzende link (vb: A1) naar X:\ A1.xls moet automatisch worden geupdate naar A2 als ik de colom fill naar beneden. (dus het hokje B1 rechtsonder vastpak, en naar beneden schuif zodat bij B2 "x:\ A2.xls -celopgaaf" komt te staan. A1 dus ge update naar A2.

Bij elk apart product excel bestand is de cellenindeling hetzelfde, dus die hoeven niet te varieren. Alleen wil ik mezelf de pijn van het: Row selecteren - Productnummer 1 invoeren, Productnummer 2 invoeren - Vervangen -- besparen.

De besparing is in dit geval dat ik alleen bij de A's het productnummer hoef in te vullen, waarna de B C etc. automatisch reageren op wat ik heb gedaan.

Ik herhaal: De informatie in B, C etc. zijn EXTERN.

Als iemand me kan helpen zou ik dat ERG op prijs stellen.

Mvg Albert

Interesse in een custom build workstation, voor gaming, wetenschappelijke toepassingen, of puur om de stijl? Contact @ https://vogd.design


Acties:
  • 0 Henk 'm!

  • onkl
  • Registratie: Oktober 2002
  • Nu online
Begrijp ik je goed als ik denk dat je bedoeld:
A B
1 [Pindakaas] [=x:\ Pindakaas.xls -celopgaaf]
2 [Appelsap] [=x:\Appelsap.xls -celopgaaf]
?
Zoja:
gebruik dan iets als
=INDIRECT(CONCATENATE("x:\"&A1&" - celopgaaf");TRUE)
in NL is indirect indirect en concatenate iets als tekst.samenvoegen geloof ik.

Acties:
  • 0 Henk 'm!

  • Allubz
  • Registratie: Februari 2006
  • Laatst online: 02-09 13:43
onkl schreef op dinsdag 06 juni 2006 @ 14:58:
Begrijp ik je goed als ik denk dat je bedoeld:
A B
1 [Pindakaas] [=x:\ Pindakaas.xls -celopgaaf]
2 [Appelsap] [=x:\Appelsap.xls -celopgaaf]
?
Zoja:
gebruik dan iets als
=INDIRECT(CONCATENATE("x:\"&A1&" - celopgaaf");TRUE)
in NL is indirect indirect en concatenate iets als tekst.samenvoegen geloof ik.
Tis een Engelse Excel.

Dit is wat ik heb ingevoerd:
=INDIRECT(CONCATENATE("N:\Database\Dollies\"&A1&"$D$11f");TRUE)
N:\Database\Dollies = path

"&A1&" = Moet de het productnummer komen die in A1 staat +.xml zodat Excel in de Excefile van het productnummer, naar:

$D$11f" = Cell - zoekt

Ik mis dus het onderdeel waar het programma van "&A1&" (als A1: 6457 - is) 6457.xml van maakt. En daarna de goede cell er nog uithaald.

Bedankt voor je reply, hoop dat je me verder kan helpen.

EDIT 2: Bij wat ik heb ingevoerd (bovenstaande) krijg ik dus een algemene " foute formule" vermelding :O

[ Voor 28% gewijzigd door Allubz op 06-06-2006 15:33 ]

Interesse in een custom build workstation, voor gaming, wetenschappelijke toepassingen, of puur om de stijl? Contact @ https://vogd.design


Acties:
  • 0 Henk 'm!

  • onkl
  • Registratie: Oktober 2002
  • Nu online
Allubz schreef op dinsdag 06 juni 2006 @ 15:10:
[...]


Tis een Engelse Excel.

Dit is wat ik heb ingevoerd:


[...]


N:\Database\Dollies = path

"&A1&" = Moet de het productnummer komen die in A1 staat +.xml zodat Excel in de Excefile van het productnummer, naar:

$D$11f" = Cell - zoekt

Ik mis dus het onderdeel waar het programma van "&A1&" (als A1: 6457 - is) 6457.xml van maakt. En daarna de goede cell er nog uithaald.

Bedankt voor je reply, hoop dat je me verder kan helpen.
:?
Eerlijk gezegd, ik snap er weinig van. Die 6457 is een productnummer? of heb je het over cel A6457?
Als ik zoiets doe probeer ik het altijd zo te doen:
1: maak een externe verwijzing (gewoon, klink in het andere werkboek de cel waarnaar je verwijst aan.)
2: je hebt iets als =[C:\mijn documenten\bestandje.xls]Sheet1!A1 of zo.
(let op blokhaken en soms enkele aanhalingstekens)

3: probeer de tekst van die formule na te maken met =concatenate(allerlei brokstukjes, waaronder celverwijzingen naar bijvoorbeeld het goede productnummer, aan elkaar geplakt met &) In dit geval iets als =CONCATENATE("[C:\mijn documenten\"&A1&".xls]Sheet1!A1")
4: als de tekst die je zo hebt samengesteld gelijk is aan de formule (en dan ook écht gelijk), zet er dan het INDIRECT stuk omheen.
5: test of slepen met de formule werkt.

Dit is denk ik geen antwoord op je vraag (het is me niet helemaal duidelijk wat je vraagt, vandaar :X), maar als je er niet uitkomt probeer het dan nog keer aan te duiden waar in dit schemaatje je vast loopt.

[ Voor 5% gewijzigd door onkl op 06-06-2006 15:42 ]


Acties:
  • 0 Henk 'm!

  • Allubz
  • Registratie: Februari 2006
  • Laatst online: 02-09 13:43
(als A1: 6457 - is)
De A's zijn altijd het productnummer bij mij. Dus in dit geval is het productnummer 6457.

Wat ik wil bereiken is dat ik een formule kan gebruiken in B C etc. die verwijst naar het XML bestand met de naam van het productnummer.

Dus in het geval van A1 = 6457
Dan wil ik in het bestand 6457.xml laten zoeken naar een bepaalde cel.

Wat ik dus zoek is een formule met waarschijnlijk het path ongeveer zo er in:

X:\Producten\ ?? A1 ?? .xml $D$11 (als ik iets uit D11 moet halen)

Stel het zeer op prijs dat je met me probeert mee te denken ik ben vast erg onduidelijk sorry daarvoor.

Interesse in een custom build workstation, voor gaming, wetenschappelijke toepassingen, of puur om de stijl? Contact @ https://vogd.design


Acties:
  • 0 Henk 'm!

  • onkl
  • Registratie: Oktober 2002
  • Nu online
OK,
1: Weet je zeker dathet een xml bestand is? Bedoel je niet xls?
2: probeer stap 1 in mijn eerdere post eens. En post dan wat je krijgt. Dus: niet dynamisch, gewoon even 1 cel doen zoals je baas het wilt. Dan kan je aan de hand daarvan verder werken.
En lees de helpteksten van CONCATENATE en INDIRECT eens door.

Acties:
  • 0 Henk 'm!

  • Allubz
  • Registratie: Februari 2006
  • Laatst online: 02-09 13:43
onkl schreef op dinsdag 06 juni 2006 @ 16:10:
OK,
1: Weet je zeker dathet een xml bestand is? Bedoel je niet xls?
2: probeer stap 1 in mijn eerdere post eens. En post dan wat je krijgt. Dus: niet dynamisch, gewoon even 1 cel doen zoals je baas het wilt. Dan kan je aan de hand daarvan verder werken.
En lees de helpteksten van CONCATENATE en INDIRECT eens door.
Egh .xls ja, excuses. Ik weet niet precies hoe ik bij .xml kom.

Ik zal het proberen moet nog even een batch verwerken zal het desnoods thuis verder proberen. (baas zegt net: Nou je ziet maar hoe laat je mrogen op werk komt O.o)

Interesse in een custom build workstation, voor gaming, wetenschappelijke toepassingen, of puur om de stijl? Contact @ https://vogd.design


Acties:
  • 0 Henk 'm!

  • Allubz
  • Registratie: Februari 2006
  • Laatst online: 02-09 13:43
Okay ik kap er nu mee maar probeer het thuis waarschijnlijk nog wel en anders morgen weer.

Ik heb nu dit bij B1
='N:\Database\Dollies\\[7772830000.xls]General data'!$D$11
Ik wil dus 7772830000.xls vervangen door een link naar "A1" zodat Excel uit "A1.xls" (dus in dit geval natuurlijk 7772830000.xls (want dat staat in A1) z'n info haalt, en dan ook nog uit vakje D11.

Het nut hiervan voor mij is dat ik dan de B' hokjes gewoon naar beneden kan trekken (net zoals C etc.) en alleen maar de A's hoef aan te passen en dat er zo elke keer in de andere vakjes automatisch word gerefereerd naar een apart extern .xls bestand.

Mvg Albert

Interesse in een custom build workstation, voor gaming, wetenschappelijke toepassingen, of puur om de stijl? Contact @ https://vogd.design


Acties:
  • 0 Henk 'm!

  • onkl
  • Registratie: Oktober 2002
  • Nu online
Dan is je formule naar alle waarschijnlijkheid
=INDIRECT(CONCATENATE("'N:\Database\Dollies\\["&A1&".xls]General data'!$D$11");TRUE)
Let op
-het enkele aanhalingsteken voor N:\
-de naam van het tabblad (General data in dit geval)
-het uitroepteken daarachter.

Acties:
  • 0 Henk 'm!

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
code:
1
=indirect(concatenate("'N:\database\dollies\\["&a1&".xls]General data'!$D$11"))

Zou het moeten doen. Alleen die enkele slash weet ik niet zeker.

Maar probeer hem zowieso rustig op te bouwen. Eerst de hele boel concatenaten zodat je een string krijgt waarin staat : 'N:\Database\Dollies\\[7772830000.xls]General data'!$D$11
En dan er een indirect voorgooien, dan zie je precies waar het fout gaat.

Eerst F5'en voor ik antwoord geef.

[ Voor 12% gewijzigd door Gomez12 op 06-06-2006 20:01 ]


Acties:
  • 0 Henk 'm!

  • Allubz
  • Registratie: Februari 2006
  • Laatst online: 02-09 13:43
Geweldig bedankt voor de hulp tot zo ver!

Nu heb ik nog een vraag:

Moet ik als ik de Excel sheet geupdate wil hebben altijd het externe bronbestand met de informatie zoals

=INDIRECT(CONCATENATE("'N:\Database\Dollies\\["&A16&".xls]General data'!$D$11")

Erin?

Dus moet ik altijd N:\Database\Dollies\bestand.xls geopend hebben als de fiels geupdate moeten worden en niet een #REF geven?

Interesse in een custom build workstation, voor gaming, wetenschappelijke toepassingen, of puur om de stijl? Contact @ https://vogd.design


Acties:
  • 0 Henk 'm!

  • onkl
  • Registratie: Oktober 2002
  • Nu online
Bedoel je of met deze techniek N:\Database\Dollies\bestand.xls ngeopend moet zijn om de waardes erin te verversen? Nee, het wordt op de achtergrond geopend, dus de netwerkschijf moet wel toegankelijk zijn, maar het hoeft niet open te staan.
Opverigens, als je een nogal fors bestand hebt, met veel verwijzingen naar veel verschillende externe bestanden, kan het een idee zijn om in opties-calculation het remote reference vinkje uit te zetten en alleen handmatig te herberekenen. Je PC is er waarchijnlijk wel even zoet mee, vandaar.

Acties:
  • 0 Henk 'm!

  • OfNoAvail
  • Registratie: November 2001
  • Laatst online: 10-09 17:35

OfNoAvail

Beter een half gezegde...

Om even dit topic weer aan te zwengelen (sorry)

Ik gebruik Excel 2003 NL

Ik heb een werk xls waarmee ik externe waarden wil binnen halen.
Middels een stukje VBA code lees ik de namen van de aanwezige bestanden in een map uit en plaats deze regel voor regel in kolom A.

Daarmee krijg ik het volgende:

Cel A1 bevat "Map1.xls"
Cel A2 bevat "Map2.xls"

Nu moet ik per bestand dezelfde cel uitlezen naar mijn werk xls.

Als ik de volgende formule gebruik:
code:
1
=TEKST.SAMENVOEGEN("'C:\voorbeeld\dataXls\[Map1.xls]Blad1'!$B$2")


Krijg ik de juiste uitkomst. Gewoon de inhoud van cel B2 van Map1.xls op werkblad "blad1"

Ter controle heb ik eerst een formule gemaakt waarmee ik exact dezelfde formule als hierboven tekstueel samenvoeg
code:
1
=TEKST.SAMENVOEGEN("'C:\voorbeeld\dataXls\[";A1;"]Blad1'!$B$2")

Dit gaat dus goed...

Nu begrijp ik dat ik met de functie INDIRECT deze bovenstaande formule uit kan laten voeren, ik maak dan dus de volgende formule:
code:
1
=INDIRECT(TEKST.SAMENVOEGEN("'C:\voorbeeld\dataXls\[";A1;"]Blad1'!$B$2");WAAR)


Nu krijg ik echter #VERW! als resultaat... er gaat dus iets mis... en dat terwijl hij letterlijk dezelfde formule (maar dan direct vanuit een cel uitgevoerd en niet eerst tekstueel samengesteld) wel goed uitvoerd.

Hopelijk ben ik duidelijk genoeg...Wie kan mij helpen?

Acties:
  • 0 Henk 'm!

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Het ontgaat me even waarom we eerst die lappen tekst uit 2006 moeten doorworstelen voordat we bij jouw topic aankomen. ;)
M.a.w. maak gewoon je eigen topic aan. :), en neem eventueel een link naar het bovenstaande topic op als referentie, maar als kick vind ik het minder geslaagd.

[ Voor 26% gewijzigd door Lustucru op 23-04-2007 20:52 ]

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland

Pagina: 1

Dit topic is gesloten.