Ga naar inhoud

Welkom op PC Helpforum!
PC Helpforum helpt GRATIS computergebruikers sinds 2006. Ons team geeft via het forum professioneel antwoord op uw vragen en probeert uw pc problemen zo snel mogelijk op te lossen. Word lid vandaag, plaats je vraag online en het PC Helpforum-team helpt u graag verder!


    Aanbevolen berichten

    Probleem(pje) met Excel (office 2010)

    Hoe kan ik een macro spontaan laten starten bij het toekennen van een vooraf bepaalde waarde in een cel van een tabel?

    In bijgaande bijlage Map1.xlsx: Vooraf bepaalde waarde = '5'. Dus bij het toekennen van de waarde '5' in cel B4 zou de 'macro1' moeten starten.(eventueel bij het verlaten van de cel B4 met de Return of Tab toets

    Dank voor uw hulp....

    Map1.xlsx

    Deel dit bericht


    Link naar bericht
    Delen op andere sites

    Zonder je code te kennen:

    Alléén voor cel B5

    Private Sub Worksheet_Change(ByVal Target As Range)
     If Intersect(Target, Range("B5")) Is Nothing Then Exit Sub
     If Target <> "5" Then Exit Sub
    'Hier je uit te voeren macro
    End Sub

    Voor B1 tot B100

    Private Sub Worksheet_Change(ByVal Target As Range)
     If Intersect(Target, Range("B1:B100")) Is Nothing Then Exit Sub
     If Target <> "5" Then Exit Sub
    'hier je uit te voeren macro
    End Sub

    Groet bucky

    Deel dit bericht


    Link naar bericht
    Delen op andere sites
  • Topicstarter
  •    0

    Dank ,bucky voor uw snelle reactie. Op het eerste zicht werkt deze oplossing niet, maar dit komt welicht omdat ik te weinig informatie gaf. Sorry daarvoor, maar ik vind niet meteen de juiste mogelijkheid om een excelcode hierbij eenvoudig in te voegen.(hoe doe je dat?, wellicht ontsnapt mij iets). Ik zal dan graag meer informatie doorsturen.

    Deel dit bericht


    Link naar bericht
    Delen op andere sites

    Dank ,bucky voor uw snelle reactie. ...., maar ik vind niet meteen de juiste mogelijkheid om een excelcode hierbij eenvoudig in te voegen.

    Hallo Ypsolana,

    in het Excelvoorbeeld dat je aangehangen hebt aan je eerste bericht staat geen macro. bucky kon dan ook de code van jou macro niet toevoegen. Als je de code van jou macro invoegd (kopiëren en plakken) in de voorbeeldmacro van bucky (zonder jou Sub() en End Sub) op de plaats waar nu de code staat:

    'Hier je uit te voeren macro

    dan zou jou deel van de macro moeten starten als aan de voorwaarde "5" in cel ("B4") (of ("B1:B1000") naar gelang de keuze die je maakt in de macro) voldaan wordt. Anders wordt de macro verlaten, tot de volgende verandering in het werkblad plaats vindt.

    Beerke10

    aangepast door Beerke10

    Deel dit bericht


    Link naar bericht
    Delen op andere sites
  • Topicstarter
  •    0

    Sorry; ik begin gans opnieuw,nu met een meer uitgewerkt voorbeeld. Een tabel (op werkblad1) in bijlage, en mijn macro hieronder. De bedoeling is om 2 lijnen (steeds dezelfde) automatisch toe te voegen telkens na een code 35. (zie voorbeeld tabelletje in bijlage). De macro op, zich werkt, maar dat spontaan starten na een code 35 lukt me niet.

    Sub Macro2()

    '2 lijnen automatisch invullen na code 35

    ActiveCell.Offset(1, -2).Select

    ActiveCell.FormulaR1C1 = Date

    ActiveCell.Offset(0, 1).Select

    ActiveCell.FormulaR1C1 = "Automatisch tekst 1" 'Vaste tekst 1

    ActiveCell.Offset(0, 1).Select

    ActiveCell.FormulaR1C1 = "20" ' vaste code

    ActiveCell.Offset(1, -2).Select

    ActiveCell.FormulaR1C1 = Date

    ActiveCell.Offset(0, 1).Select

    ActiveCell.FormulaR1C1 = "Automatisch tekst 2" 'Vaste tekst 2

    ActiveCell.Offset(0, 1).Select

    ActiveCell.FormulaR1C1 = "21" ' vaste code

    ActiveCell.Offset(1, -2).Select

    End Sub

    Map1.xlsm

    Deel dit bericht


    Link naar bericht
    Delen op andere sites

    Ik heb de code een beetje ingekort, plak deze achter je worksheet.

    Private Sub Worksheet_Change(ByVal Target As Range)
     On Error Resume Next
     If Intersect(Target, Range("C1:C100")) Is Nothing Then Exit Sub
     If Target <> "35" Then Exit Sub
    '2 lijnen automatisch invullen na code 35
       ActiveCell.Offset(, -2).Value = Date
       ActiveCell.Offset(, -1).Value = "Automatische tekst 1"
       ActiveCell.Value = 20
       ActiveCell.Offset(1, -2).Value = Date
       ActiveCell.Offset(1, -1).Value = "Automatische tekst 2"
       ActiveCell.Offset(1, 0).Value = 21
       ActiveCell.Offset(1, -2).Select
    End Sub

    Groet bucky

    Deel dit bericht


    Link naar bericht
    Delen op andere sites
  • Topicstarter
  •    0

    Hallo Bucky;

    Alweer opgelost door u. Ik kan uw oplossing zeer goed inpassen in een groter ontwerp(je).

    Mijn beste dank en groet. Ik markeer ik dus 'Opgelost'.

    Deel dit bericht


    Link naar bericht
    Delen op andere sites
    Gast
    Dit topic is nu gesloten voor nieuwe reacties.
    Log in om dit te volgen  

    • Welkom op PC Helpforum

    • Leden statistieken

      • Aantal leden
        38.985
      • Meeste online
        1.622

      Nieuwste lid
      Agnes Bouwen
      Registratiedatum
    • Gerelateerde inhoud

      • Door lv
        Hallo,
         
        Ik heb een Excelbestand met meerdere kolommen, in de eerste kolom staat het aantal, in de tweede een artikelnummer, in de andere kolommen staat informatie over dit artikelnummer.
        Ik ben op zoek naar een macro waarbij de dubbelen uit kolom 2 (Artikelnummers) gevonden worden, de aantallen in kolom 1 van deze overeenkomende artikelnummers worden opgeteld en dan op 1 na, de dubbele artikelnummers verwijderd worden.
         
        In mijn tabel zitten afbeeldingen en de volgorde is essentieel, waardoor een draaitabel niet geschikt is (voor zover ik weet). Ik ben zelf niet zo thuis in de macro's en heb nog geen goede macro kunnen ontdekken. 

        Iemand die mij hierbij kan helpen?

         
      • Door Excel dummy
        Ik heb een basis excel-bestand gecreëerd bestaande uit verschillende tabs.
        Per klant zal dit bestand worden aangemaakt. Graag wil ik een "extern dashboard" creëren waar ik bepaalde informatie gegroepeerd kan zien.
        Liefst zou ik dit niet met bvb. een Vlookup formule doen, maar een macro creëren die ervoor zorgt dat deze informatie automatisch wordt opgevraagd op het moment dit document voor een nieuwe klant wordt aangemaakt.
         
        Ik wil het risico vermijden dat een collega of ik vergeet om manueel de vlookup formule toe te voegen en dat de gegroepeerde gegevens niet zouden kloppen. 
         
        Heeft er iemand raad hierbij?
         
        Alvast bedankt!
      • Door Rik123
        Beste lui,
         
        Ik een ander topic heb ik deels een oplossing gevonden voor hetgeen wat ik in Excel wil. Namelijk dat je dubbel kan klikken en de cel automatisch in groen veranderd.
        De code hiervoor is de onderstaande.
         
        Private Sub Worksheet_BeforeDoubleClick(ByVal target As Range, Cancel As Boolean) If target.Interior.ColorIndex = xlNone Then target.Interior.ColorIndex = 43 ElseIf target.Interior.ColorIndex = 43 Then target.Interior.ColorIndex = xlNone End If End Sub
         
        Het probleem wat zich voortdoet is dat dit alleen werkt wanneer een cel geen kleur heeft. Weet iemand hoe je deze code kan veranderen zodat je ook een gekleurde cel kan aanpassen naar groen met dubbelklik?
      • Door Frans van wessel
        Geachte heer Karel ,
        Ik heb wimdows 7 ultimate 64 bits geinstalleerd en Systeem herstel en backup wekt niet.
        Heeft u daar een oplossing voor ?
        Met vriendelijke groet,
        Frans v. Wessel
      • Door RuudvanDoorn
        Ik heb dit nog steeds niet gevonden. 
        Ik heb een brief voor de klanten van mijn webshop maatjemeer.nl .
        Nu heb ik op pagina 1 de brief. 
        Op pagina 2 allerlei variabelen die klantafhankelijk worden ingevuld.
        Hoe kan ik permanent instellen dat bij het afdrukken alleen de eerste pagina wordt afgedrukt.
        En ja! Ik begrijp dat ik dat kan aangeven bij de printerdialoog.
        Maar ik wil er niet om hoeven 'denken'.  Gewoon ctrl P en printen maar.
        Het document zelf moet dus aangeven wat geprint moet worden.
        Iemand een idee of oplossing? 
        Misschien is het erg simpel, maar ik krijg het niet gegoogeld
        Bedankt alvast voor de gedane moeite.
         
        Ruud van Doorn
        www.maatjemeer.nl 
    Logo

    OVER ONS

    PC Helpforum helpt GRATIS computergebruikers sinds juli 2006. Ons team geeft via het forum professioneel antwoord op uw vragen en probeert uw pc problemen zo snel mogelijk op te lossen. Word lid vandaag, plaats je vraag online en het PC Helpforum-team helpt u graag verder!

    ×
    ×
    • Nieuwe aanmaken...

    Belangrijke informatie

    We hebben cookies geplaatst op je toestel om deze website voor jou beter te kunnen maken. Je kunt de cookie instellingen aanpassen, anders gaan we er van uit dat het goed is om verder te gaan.