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

automatisch macro laten uitvoeren

Status
Niet open voor verdere reacties.

Alexander86

Gebruiker
Lid geworden
22 feb 2007
Berichten
83
Hallo,

Momenteel ben ik bezig met een programmatje te schrijven in VBA. dit gaat om prijzen van binnendeuren uit te rekenen.
De "tekst" die op het excel blad komt is onderverdeeld in verschillende onderdelen.
nl.: het deurblad zelf
de binnenkast
het beslag.

bij het onderdeel deurblad moeten er enkele dingen aangeduid worden met keuzepijltjes. afhankelijk van deze keuzes verschijnt er al dan niet bepaalde tekst en formules onder de andere onderdelen.

nu heb ik daarvoor in VBA bovenaan gekozen voor worksheet en before_double_click
ik heb dus als het ware 1 zeer grote macro geschreven en deze wordt uitgevoerd als ik dubbel klik.

hierdoor moet ik dus dingen aanduiden door de keuzelijsten en dan altijd als ik iets heb aangeduid dubbel klikken.

het probleem is nu dat ik wanneer er in een bepaalde cel iets veranderd (bijv. door een andere keuze bij de keuzelijst) dat hij een deel van die macro automatisch uitvoerd.Als ik dan in een nog andere cel iets anders invoert dat hij dan nog een ander deel van die macro uitvoert. het is eigenlijk als er iets veranderd in die bepaalde cel dat hij een macro uitvoert.

iemand die me kan helpen met het uitleggne hoe ik dit best doe?

Mvg,
Alexander
 
Hierbij zit het eigenlijke programma, (nog in opbouw wel)

bv bovenaan staat het deurblad, het type binnendeur kan dus gekozen worden met keuzepijltje.

bvb wanneer er bij type binnendeur iets gekozen wordt bv met" .... raamgeheel" dan komt er onder het element binnenkast een onderdeeldeel 'raamgeheel', als er een type deur gekozen wordt waar een geen raamgeheel instaat komt dit onderdeeltje niet.

zo is het ook dat er automatosch onder binnenkast het onderdeel 'slaglat' staat maar wanneer er bij type binnendeur iets staat met "zwaaideur..." dan verdwijnt dit onderdeeltje "slaglat" na dubbel klik.
dit zou automatisch moeten kunnen gebeuren.

kort gezegd: bij verandering van bepalende cellen moet er automatisch een macro afgelopen worden.
 
Ik kan het wel openen, enneuh... :shocked:

Dit is duidelijk code van de macro recorder. Geeft niet, maar kuis die code dan ook op. Bv. wat je eerst moet doen, is zoiets:

Code:
Range("C8").Value = "AFWERKING DEURBLAD: "
                Range("C8").Select
            With Selection
                .HorizontalAlignment = xlRight
                Selection.Font.Bold = True
            End With

vervangen door

Code:
With Range("C8")
        .Value = "AFWERKING DEURBLAD: "
        .HorizontalAlignment = xlRight
        .Font.Bold = True
    End With

En er zijn zo veel van die stukken, allemaal gelijkaardig. Als die allemaal weg zijn, zal je code veel sneller uitvoeren en ook het scherm zal veel minder flikkeren.

Verwijder dan de ellenlange lege regels in de code.

Post dan het bestandje opnieuw.

Wigi
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan