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

Berekeningsoptie tellen 'Automatisch' in VBA

  • Onderwerp starter Onderwerp starter wivoe
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

wivoe

Gebruiker
Lid geworden
25 mrt 2008
Berichten
146
Hallo deskundigen,

Heb een aantal cellen waarin door middel van de linkermuisknop met
dubbelklikken een cel een kleur krijgt. Door middel van klikken met
de rechtermuisknop wordt de kleur verwijderd. Deze code in VBA werkt
prima. Tel het aantal kleurcellen met =KleurCellenTellen(A1:D10;E1)
werkt ook prima, waarin de functie =KleurCellenTellen in VBA prima werkt.
Wat ik nu graag zou willen dat is als een aantal cellen zijn 'gekleurd'
of weer 'wit' zijn gemaakt het aantal automatisch aan de nieuwe situatie
wordt aangepast. Nu gebeurt dat alleen als ik op F9 druk.

Met vriendelijke groet,

Wim
 
Met worksheet events:

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    'Roep hier je macro aan
     [COLOR=#ff0000]Target[/COLOR].Interior.Color = vbRed
End Sub


Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    'Roep hier je macro aan
     [COLOR=#ff0000]Target[/COLOR].Interior.Pattern = xlNone
End Sub
 
Laatst bewerkt:
Geen probleem toch?
Code:
Wangen.Interior.Color = xlNone
:p
 
Misschien heb ik het niet goed uitgelegd wat ik bedoel, maar het gaat mij om het
automatisch weergeven van het nieuwe aantal 'gekleurde' cellen na dubbelklikken.
Normaal kan dit met F9, maar ik wil graag dat het automatisch gebeurt.

Het weergeven van kleuren en de formule voor het aantal gekleurde cellen werken prima,
alleen het F9 automatisch aanpassen van het aantal gewijzigde cellen.

Wim
 
Mij lijkt het automatisch plaatsen van een voorbeeldbestand de prioriteit.
 
Stel dat je aantal gekleurde cellen in A1 staat. Dan kun je dat aantal ophogen met 1 na een dubbelklik of verlagen met 1 na een rechterklik.
Maar je kunt na deze events ook je macro aanroepen zoals ik al eerder meldde.
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
     Target.Interior.Color = vbRed
     Cells(1, 1) = Cells(1, 1) + 1
     TelGekleurdeCellen
End Sub


Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    Target.Interior.Pattern = xlNone
    Cells(1, 1) = Cells(1, 1) - 1
    TelGekleurdeCellen
End Sub
 
Zo dan:
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Set Rng = Intersect(Target, Range("A1:D10"))
    If Rng Is Nothing Then Exit Sub
    If Rng.Count > 1 Then Exit Sub
 
    Target.Interior.Color = vbBlack
    [COLOR=#ff0000]Application.Calculate[/COLOR]
End Sub


Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    Set Rng = Intersect(Target, Range("A1:D10"))
    If Rng Is Nothing Then Exit Sub
    If Rng.Count > 1 Then Exit Sub


    Target.Interior.Color = vbWhite
    [COLOR=#ff0000]Application.Calculate[/COLOR]
End Sub
 
kijk eens: dubbelklik met dubbelfunktie:
 

Bijlagen

Laatst bewerkt:
@Hulpje

Bedankt voor je hulp, ik krijg helaas je VBA niet werkend. Heb je het zelf in mijn bijgevoegd bestand geprobeerd?

@SNB

Ook bedankt voor je inzet, maar ook hier krijg ik je bestand niet werkend.

Wim
 
Het is me een raadsel hoe je voor het voor elkaar krijgt het bestand niet te laten werken:

- open het bestand
- zorg dat macro's ingeschakeld zijn
- dubbelklik in het gebied A1:D10

Of werk je met Excel van voor 2007 ?
 
Laatst bewerkt:
@Hulpje

Op mijn PC werk je bestand niet, maar wat doe ik fout is nu de grote vraag.
 
Berekeningsoptie tellen 'Automatisch' in VB

@snb,

Probleem met jou bestand opgelost. Ik heb het bestand nu eerst opgeslagen
en toen weer op m'n pc geopend en het werkt nu als de brandweer.
Ook het optellen en aftrekken gaat nu automatisch. Sorry voor al je tijd
die ik in beslag nam.

Ook @Hulpje nog bedankt. Zal dit item op opgelost zetten.


Bedankt, Wim
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan