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

zoeken in alle tabbladen dmv VBA

Status
Niet open voor verdere reacties.

DesignerQZ

Gebruiker
Lid geworden
3 aug 2022
Berichten
24
Ik heb een mooie uitdaging. Wij hebben een excel bestand met een aantal tabbladen. Elk tabblad is een sjabloon die we gebruiken om een prijs te calculeren. Wanneer we een post willen calculeren kopieren we een van de tabbladen, hernoemen dit tabblad, en gaan op het nieuwe tabblad rekenen. Hier komt een prijs uit. Voor een eventuele volgende post kopieren we opnieuw een tabblad (dit kan eventueel hetzelfde origineel zijn) en beginnen opnieuw. Op deze manier krijgen we een bestand met de originele tabbladen, maar ook met een aantal nieuwe tabbladen. Als we alles hebben gecalculeerd dan wordt er handmatig (!) op een tabblad met overzichten allerlei verwijzingen gemaakt naar de nieuwe ingevulde tabbladen om zo een totaal te genereren. Dit kost niet alleen elke keer weer heel veel tijd maar is ook foutgevoelig. Dit moet toch sneller en veiliger kunnen. Is er een handige harry die een macro kan schrijven met een korte uitleg zodat ik het kan toepassen om dit te automatiseren? Het gaat om de waarde die op elk tabblad in cel U2 staat. Als deze groter is dan nul dan wil ik een aantal cellen van datzelfde tabblad geretourneerd zien op het tabblad met de totalen.
 
Om daar een macro voor te schrijven is het op zijn minst handig te weten hoe het tabblad met de totalen er uit ziet. Graag een voorbeeldbestandje.
 
Klinkt omslachtig. Deze "macro" voldoende?
Code:
=SOM(Blad1:Blad3!U2)
Aanpassen naar behoefte. Blad1 = eerste tabblad in reeks, Blad3 is laatste tabblad in reeks. U2 wordt hiermee opgeteld op deze en alle tussenliggende bladen.
 
Laatst bewerkt:
Mij lijkt dit een klassieke vorm van 'papier'denken.
Dan kun je beter Word gebruiken.

Herstructureer de berekeningen in 1 dynamische tabel in 1 werkblad.
 
Bestandje toegevoegd.

Optellen van alle bladen lukt wel, maar ik ben specifiek op zoek naar een manier om een net overzichtje te krijgen van alléén de bladen waarbij de waarde in cel U2 groter is dan nul. Voor alle bladen waar dit niet zo is hoef ik geen waarden geretourneerd te krijgen.
 

Bijlagen

Als je cellen die nul zijn mee telt in de som maakt dat toch niks uit in het totaal van de som?
 
Hierbij een klein voorzetje, zelf nog even aanvullen:
- Eerst blad Totaal leegmaken
- Titels toevoegen (=sheetnamen?)
- Andere kolommen overnemen.

Code:
Sub Totalen()
    Dim rijTotaal As Integer
    rijTotaal = 2
    For Each sht In Sheets
        If sht.Range("U2") > 0 Then
            Sheets("Totaal").Cells(rijTotaal, 1) = "De kosten voor " & sht.Range("A1") & " bedragen € " & sht.Range("U2")
            rijTotaal = rijTotaal + 1
        End If
    Next
End Sub
 
zijn dat niet wat veel tabbladen voor weinig gegevens of is het voorbeeld niet representatief?
 
Het voorbeeld is inderdaad niet representatief voor de toepassing waarvoor ik het wil gebruiken. Maar de code werkt dus ik ben al erg blij! Nu kan ik weer lekker verder knutselen:D

Ben nu weer op zoek naar een manier om met hetzelfde principe een aantal cellen ergens in te voegen en een pagina-einde te maken
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan