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

Formules Excel

Status
Niet open voor verdere reacties.

mompie

Nieuwe gebruiker
Lid geworden
13 nov 2012
Berichten
3
Ik heb 30 veschillende Excelbestanden die elk uit 25 tabbladen bestaan. Nu wil ik van elk Excelbestand getallen optellen uit tabblad 25. Als ik elk bestand appart intoets dan wordt de formule te lang. Er moet toch een korte formule voor te maken zijn lijkt me? Ik weet alleen niet hoe, wie weet raad?
 
Hier zal VBA aan te pas komen, met formules krijg je dit m.i. niet geklaard.
Als alle bestanden in 1 Dir staan is dit met een betrekkelijk eenvoudige loop op te lossen. (afhankelijk van wat je uiteraard allemaal wil optellen)
 
Totdat er iets beters komt ken je dit proberen.
In een normale module stoppen.
Wel de "C:\TempA\" veranderen naar de folder waar al de bestanden in staan. (Geen andere bestanden erin!!!)
Ook de Range veranderen die je op wilt tellen.
Stop deze code in een kopie van je workbook om het eerst te proberen.



Code:
Sub Get_The_Totals()
    Dim sh As Worksheet
    Dim LR As Long
    Dim strFile As String, mFolder As String, b As String
    Dim a As Long
    Set sh = ThisWorkbook.Sheets(1)
    LR = sh.Cells(Rows.Count, "A").End(xlUp).Row + 1
    mFolder = "C:\TempA\"    ' <<<<<<<<< only search workbooks here
    strFile = Dir(mFolder & "*.xls*")
    Application.ScreenUpdating = False
    Do While strFile <> ""
        Workbooks.Open mFolder & strFile
        b = ActiveWorkbook.Name
        a = WorksheetFunction.Sum(Sheets(25).Range("A1", Sheets(2).Range("A" & Rows.Count).End(xlUp)))
        sh.Cells(LR, 1) = b
        sh.Cells(LR, 2) = a
        ActiveWorkbook.Close True
        strFile = Dir
        LR = LR + 1
    Loop
    Application.ScreenUpdating = True
End Sub
 
Als je zonder VBA aan de gang wil dan kan je natuurlijk ook eerst alle getallen apart ophalen. Ieder in zijn eigen cel en dan de cellen optellen

Ron
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan