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

waarden uit nieuwe werkmappen automatisch optellen

Status
Niet open voor verdere reacties.

maarten423

Gebruiker
Lid geworden
8 mrt 2008
Berichten
26
Beste mensen,

Wij zijn een klein bedrijf en maken onze offertes altijd in Excel. Deze offertes worden gemaakt uit een excel invulblad en dan opgeslagen onder de naam van de klant in een map ''offertes''. Nu vroeg ik me af of mogelijk is om de offertebedragen, welke altijd in dezelfde cel staan, automatisch in een apart werkblad bij elkaar op te tellen.Het meeste wat in dit forum uitgelegd wordt, gaat mij heel ver boven de pet, dus als hier een redelijk eenvoudige formule voor is, zou geweldig zijn.
Alvast bedankt voor de hulp.

Groeten,

Maarten
 
Maarten,

Dit is uiteraard mogelijk. Heb enkele vragen voordat ik deze formule kan ontwerpen.

- Gaat het om werkbladen uit meerdere bestanden of werkbladen uit 1 bestand?
- Geef eens een voorbeeld van de bestandnaam(waar de klantnaam staat zet maar neer KLANT, voor de privacy)
- Komen er periodiek nieuwe werkbladen bij of staat dat aantal al vast?

Het bestand of een vb bestand zou handig zijn voor de formule.
 
Maarten,

Dit is uiteraard mogelijk. Heb enkele vragen voordat ik deze formule kan ontwerpen.

- Gaat het om werkbladen uit meerdere bestanden of werkbladen uit 1 bestand?
- Geef eens een voorbeeld van de bestandnaam(waar de klantnaam staat zet maar neer KLANT, voor de privacy)
- Komen er periodiek nieuwe werkbladen bij of staat dat aantal al vast?

Het bestand of een vb bestand zou handig zijn voor de formule.

Als ik het goed heb gelezen, is er een directory met Excel-bestanden. Die bestanden hebben de naam van de klant.

Het lijkt er dus op dat een macro ipv een formule noodzakelijk is.

Met vriendelijke groet,


Roncancio
 
Nou…. “redelijk eenvoudig” kan je alvast vergeten. Je zal om te beginnen met macro’s in de weer moeten, die informatie voor je kunnen ophalen. Voordat je iets met een formule kan doen, moet je eerst een aantal parameters benoemen en de gegevens ophalen. Vragen die minimaal in je macro moet oplossen zijn de volgende:
· Waar staan die bestanden?
· Zijn er überhaupt bestanden van klant X?
· Welke bestanden zijn er mbt klant X?
· Hoe heten die bestanden ?

Als je al die gegevens hebt, kan je formules maken. Ik heb het wel eens gedaan voor een kilometerdeclaratie-formulier, maar het is een lijdensweg….

Hier een voorbeeldje:

Macro haalt gegevens op uit de map c:\kilometer declaraties daarin staat per maand een bestandje met verreden kilometers. Totaal is genoemd in cel G42, daar gaat het dus eigenlijk om.
Er wordt gekeken of er bestanden zijn, en hoe die heten. Vervolgens worden de bestandsnamen gekopieerd naar kolom AE (dat hoeft niet, maar is wel handig als controle, dan zie je tenminste terug waar de gegevens vandaan komen), en de waarden uit betreffende bestandjes (in dit geval het aantal verreden kilometers) in cel G42 worden gekopieerd in kolom AD.

MACRO (in het ThisWorkbook tabje)


Private Sub Workbook_Open() ‘dit uitvoeren als werkboek opent

'Sheets("Voorzijde").Select

With ActiveWorkbook
.UpdateRemoteReferences = True 'set menu optie externe verwijzingen bijwerken
.SaveLinkValues = True 'set menu optie externe koppelingswaarden opslaan
End With


Application.ThisWorkbook.UpdateLinks = xlUpdateLinksAlways
Dim fileList() As String
Dim fName As String
Dim fPath As String
Dim I As Integer

fPath = "c:\Kilometer declaraties\"
fName = Dir(fPath & "*.xls")
While fName <> ""
I = I + 1
ReDim Preserve fileList(1 To I)
fileList(I) = fName
fName = Dir()
Wend
If I = 0 Then
MsgBox "Er zijn geen bestanden gevonden in de map c:\kilometer declaraties"
Exit Sub
End If
For I = 1 To UBound(fileList)
Range("AD" & I).Value = fileList(I)
Myxlname = "='" + fPath + "[" + fileList(I) + "]" + "Voorzijde'"
ActiveWorkbook.Names.Add Name:="MyValue", RefersTo:=Myxlname + "!$G$42"
Range("AE" & I).Value = Range("AA6")
Next
End Sub

'UITLEG: deze macro vraagt de bestandnamen op van alle bestanden in de folder c:\kilometer declaraties\ in kolom AD
'vervolgens worden de waarden uit cel G42 (het aantal verreden kilometers) uit de betreffende bestanden opgeroepen in kolom AE
'deze waarden worden gebruikt in de optelling voor het aantal kilometers.





Resultaat: 2 kolommen met gegevens. Eén kolom met bestandsnamen, en één kolom met waarden. Op die waarden kan je vervolgens iedere willekeurige formule loslaten.
 
Goedemorgen Tim en Roncancio,

Bedankt voor jullie reactie.
Voor de duidelijkheid heb ik het bestand waar het om gaat bijgevoegd. Dit bestand '' de blanco opnamestaat '' gebruiken we als we naar een klant gaan. Dan vullen we alle gegevens in en slaan het bestand op onder de naam van de klant, in een map offertes. Er worden dagelijks nieuwe bestanden aangemaakt maar het aantal bestanden is altijd verschillend. Ik hoop dat ik duidelijk genoeg ben.

Groeten,

Maarten
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan