• 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.

Massa externe koppelingen creëren

Status
Niet open voor verdere reacties.

brunsj1

Nieuwe gebruiker
Lid geworden
2 okt 2017
Berichten
4
Ik google me een ongeluk en kan niks vinden dus bij deze:

Bekijk bijlage Map1.xlsx

De bedoeling is om de D4 naar onder te slepen zodat ik niet telkens handmatig "Bestand1" tot en met "Bestand700" hoef in te typen.
En niet alleen cel B5 uit het bronbestand overigens, maar totaal nog 9 andere cellen...
Ik heb de functies "Tekstsamenvoegen" en "Indirect" en een combinatie van de twee al geprobeerd, en dat laatste levert in zekere zin resultaat op, echter moet ik dan voortdurend de bronbestanden open houden.
En gezien dit er 700 zijn is dat geen optie.

Er wordt gewerkt aan een database oplossing maar gezien drukte en gebrek aan rechten voorspel ik dat dat "te lang" duurt.
Is er een optie omdat op deze omslachtige manier te doen?

Ik hoop dat het zo duidelijk genoeg is. :)
 
700 koppelingen is vragen om problemen. Welke versie van Excel gebruik je?
Overigens ben je er bijna in kolom F. Trek omlaag, kopieer, plakken speciaal waarden, dan zoeken en vervangen, zoek = en vervang door =, alles vervangen, thee gaan drinken totdat Excel klaar is.
 
Gegevens zonder koppeling:

Code:
Sub M_snb()
   ReDim sn(1 To 700, 0)
   
   For j = 1 To 700
     With GetObject("U:\Map\Bestand" & j & ".xlsx")
        sn(j, 0) = .Sheets("Tabblad").Cells(5, 2)
     End With
   Next
   
   Sheet1.Cells(1).Resize(UBound(sn)) = sn
End Sub
 
700 koppelingen is vragen om problemen. Welke versie van Excel gebruik je?
Overigens ben je er bijna in kolom F. Trek omlaag, kopieer, plakken speciaal waarden, dan zoeken en vervangen, zoek = en vervang door =, alles vervangen, thee gaan drinken totdat Excel klaar is.

Dit zou werken, ware het niet dat alle bestanden die uitgelezen moeten worden (in de toekomst) nog niet allemaal zijn aangemaakt. Dus het "alles vervangen" loopt nu telkens spaak als ik bij een bestand kom die nog niet bestaat.

Excel versie Office Plus 2013
Ik heb al een onderverdeling gemaakt per levering, dus dat word 700 delen door 5 voor ons.

En een database is inderdaad de beste oplossing maar u heeft geen idee hoe langzaam onze IT afdeling is, best case scenario is over een half jaar.
 
Laatst bewerkt:
Gegevens zonder koppeling:

Code:
Sub M_snb()
   ReDim sn(1 To 700, 0)
   
   For j = 1 To 700
     With GetObject("U:\Map\Bestand" & j & ".xlsx")
        sn(j, 0) = .Sheets("Tabblad").Cells(5, 2)
     End With
   Next
   
   Sheet1.Cells(1).Resize(UBound(sn)) = sn
End Sub

Als het niet teveel moeite is, zou u enige uitleg kunnen toevoegen?
O.a. wat deze macro precies doet. Ik weet hoe ik hem invoer maar ik moet het nog wel kunnen aanpassen.
 
Laat hem eens stapsgewijs ( F8 ) lopen.
De macro doet hetzelfde als wat je met die koppelingen wilde bereiken.
In Excel kun je zonder veel moeite een databaseoplossing maken.
Of het handig is 700 verschillende bestanden te maken betwijfel ik te zeerste.
Ieder Excel werkblad heeft meer dan 1 miljoen rijen.
In plaats van 700 bestanden kun je in 1 werkblad een tabel maken met 700 'records' met 16384 velden. Voor Excel peanuts.
Afgeven op de IT-afdeling lijkt me niet getuigen van veel kennis (noch van Excel, noch van databases).
 
Laat hem eens stapsgewijs ( F8 ) lopen.
De macro doet hetzelfde als wat je met die koppelingen wilde bereiken.
In Excel kun je zonder veel moeite een databaseoplossing maken.
Of het handig is 700 verschillende bestanden te maken betwijfel ik te zeerste.
Ieder Excel werkblad heeft meer dan 1 miljoen rijen.
In plaats van 700 bestanden kun je in 1 werkblad een tabel maken met 700 'records' met 16384 velden. Voor Excel peanuts.

Nee 700 verschillende bestanden per jaar is niet handig, maar voor zover ik weet is een paar honderd verschillende mensen in 1 bestand laten werken ook niet handig. Hoe dan ook, dit is de hand de mij gedeeld is en hier moet ik nu mee werken.

Afgeven op de IT-afdeling lijkt me niet getuigen van veel kennis (noch van Excel, noch van databases).
Als ik afdoende kennis zou hebben had ik hier niet om hulp gevraagd. Ik zie echter niet in waarom u van mening bent dat u voldoende informatie heeft over mijn situatie om die uitspraak te doen. Ik zou dan ook voortaan dit soort opmerkingen achterwege laten.

Desalniettemin, bedankt voor de hulp. :)
 
Pro plus 2013 geeft je het recht op de PowerQuery invoegtoepassing. Die heeft een optie om gegevens uit gelijk ingedeelde Excel bestanden te halen die in één map staan. Als er af en toe nieuwe bestanden in die map komen is het een kwestie van de query vernieuwen. Weet niet of de performance acceptabel zal zijn bij 700 bestanden, maar het is zeker de moeite waard om het te proberen.
 
Als het om 10 gegevens per bestand gaat kun je die beter op laten slaan als csv.
Dan kun je met 1 regel VBA er 1 totaal csv-bestand van maken waarin de gegevens van alle bestanden staan.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan