1 2 3 4 5 6 7 8 9 10 11 12 | If CheckBox1.Value = True Then Date = Worksheets("Sheet1").Range("H2").Value Worksheets("Sheet1").Range("H2").Value = Date + 152 Date = Worksheets("Sheet1").Range("I2").Value Worksheets("Sheet1").Range("HI").Value = Date + 183 Else If CheckBox1.Value = False Then Exit Sub End If End If End Sub |
1 2 | =AANTAL(data100!G:G;2) |
1 2 3 4 5 6 | x = a + b Range("A" & c).Value = x End Function |
1 2 3 4 5 6 7 8 9 | a = Range("B1").Value b = Range("B2").Value c = Range("B3").Value Som(a, b, c) End Sub |
Als je de variabele "datum" noemt ipv "date" zal het ws. een stuk beter gaan. "Date" is nl. een interne vba functie die de computerdatum opvraagt en schijnbaar ook terug kan schrijven.quote:Op woensdag 25 juni 2008 10:28 schreef BierKoning het volgende:
Ok ik heb een nogal vervelend probleem nu.
Ik ben weer bezig gegaan met VBA en opzich gaat het niet slecht. Op 1 puntje na..
Wanneer ik de volgende code gebruik:
[ code verwijderd ]
Telt hij netjes 152 dagen bij H2 op en 183 dagen bij I2. So far so good.
Alleen telt hij ook 183 dagen bij de computerdatum op Dit is binnen excel een probleem (ik heb de computerdatum nodig) maar het is ook gewoon algemeen onhandig als je computerdatum +10 jaar is (door het testen)
Weet iemand hoe dit komt?
Dat is wel een leuk dingetjes zeg dat je afhankelijke dropdown menus kan maken.quote:Op vrijdag 27 juni 2008 11:17 schreef DaFan het volgende:
Data validation kan je wel gebruiken cross-sheet als je een Named range gebruikt voor je lijst in Sheet2.
(Range selecteren, Invoegen -> Naam -> Definiëren, óf direct in het witte vak linksboven (waar je celnummer staat) een naam intoetsen en op Enter drukken).
In Data Validation kan je dan kiezen voor Lijst -> =<jenaamhier>
Zo kan je ook dubbele dropdowns maken, die dus afhankelijk van de keuze uit dropdown 1 verandert...erg fijn. Zie hier voor een tutorial
Ja ik leerde dit ook pas 2 maanden terug, scheelt een BERG gezeur met VBAquote:Op zaterdag 28 juni 2008 11:59 schreef Deetch het volgende:
[..]
Dat is wel een leuk dingetjes zeg dat je afhankelijke dropdown menus kan maken.
Het klantnummer staat altijd in kolom a, in alle sheets. Het is dus een lange rits met klantnummers onder elkaar.quote:Op zaterdag 28 juni 2008 12:18 schreef DaFan het volgende:
Heb je een vaste cel waar je dat klantnummer invoert of kan dat elke cel zijn? In situatie 1 is het wel te doen, situatie 2 schier onmogelijk (automatisch = als je m intikt en op Enter ramt).
Wat wel kan, is een knop in Werkblad 1 die je gaat gebruiken om nieuwe klanten toe te voegen (met Prompts of via een Form, whatever) want dan kan je simpeler testen op het ingevoerde klantnummer.
Wat niet kan, dat kan niet. Bedankt in ieder geval.quote:Op zaterdag 28 juni 2008 12:34 schreef DaFan het volgende:
Ja daar was ik al bang voor
Kijk:
Als jij een nummer toevoegt, is er voor Excel geen manier om te kijken wáár dit is gebeurt (in welke cel). Dit kan wél als het altijd in dezelfde cel is. Je maakt dan een zogenaamde _change event, die elke keer gedaan wordt bij een wijziging in je sheet. (Kort gezegd, die cel wordt gekopieerd ergens ver weg buiten beeld en dan vergeleken met de oude waarde, is deze anders dan weet je dus dat er geknoeid is). Het is nu dus niet te doen om te bepalen óf er een nummer is toegevoegd en wáár (als je dat weet is het nummer bekend, dus kan je testen of hij al in werkblad 2 voorkomt).
Ik moet dit zelf nog even testen, misschien heb ik wel een manier om dit te omzeilen. Máár het is heir inmiddels half 9 dus ik ga even bier drinken en film kijken Misschien vanavond nog, anders morgen! Sorry
1 |
1 |
1 2 3 | End Sub |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | LastRowB = Sheets("Sheet2").Range("A65536").End(xlUp).Row With Sheets("Sheet1") If .Range("F1").Value <> .Range("G1").Value Then NwKlantnummer = .Range("F1").Value For i = 1 To LastRowB If Sheets("Sheet2").Range("A" & i).Value = NwKlantnummer Then Followup = Sheets("Sheet2").Range("B" & i).Value Datum = Sheets("Sheet2").Range("C" & i).Value MsgBox "Klantnummer al bekend in Sheet2!" & (Chr(13)) & (Chr(13)) & "Datum: " & Datum _ & (Chr(13)) & "Actie: " & Followup, vbOKOnly, "Melding" End If Next i .Range("G1").Value = .Range("F1").Value End If End With End Sub |
Hier heb ik helemaal wel wat aan. Het werkt precies zoals ik dat wil hebben.quote:Op zondag 29 juni 2008 07:01 schreef DaFan het volgende:
Ok Dirkh het is gelukt
Hoop dat je hier wat aan hebt!
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |