VBA: zoeken in kolom D (vanaf D8) naar het grootste nummer + 1

Status
Niet open voor verdere reacties.
Hi gast0660,

Bedankt voor je uitleg, maar ik begrijp nog 1 dingetje niet helemaal, nl het stukje [a65536].

Verwijst dit naar cel A65536 en wat betekenen de rechte haken er omheen?


Bedankt Rob
 
Hoi helboy01
65536 is een standaard waarde in excel, nl de laaste rij van een werkblad is dus een range ("A65536")
De rechte haken zijn het VBA equivalent van de functie CTRL + pijltjestoetsen
[A65536].End(xlUp)
[A65536].End(xlDown)
[A65536].End(xlToLeft)
[A65536].End(xlToRight)
Groet
 
Hi gast0660, heel erg bedankt voor je uitleg. Weer wat geleerd :thumb:

zou je mischien een extra aanpassing aan je progje willen doen. Stel dat iemand data wil aanpassen via het userform, hoe kun je dan de regel weer ophalen en weer terugschrijven op precies dezelfde lijn.

groetjes rob
 
Hoi
@hellboy
dus een range ("A65536")
Dit op zijn eigen is een celverwijzijng en geen range, foutje mijnentwege:o
zou je mischien een extra aanpassing aan je progje willen doen. Stel dat iemand data wil aanpassen via het userform, hoe kun je dan de regel weer ophalen en weer terugschrijven op precies dezelfde lijn.
Ben ik toevallig mee bezig:)
Groet
 
Hoi gast0660,

Ondanks dat ik weinig verstand heb van vba en al helemaal niet van Userforms heb ik jouw grapje toch ontdekt en ga ik de tekst zo veranderen dat aan het eind deze niet gaat vragen: Nieuwe ingave? Het moet niet als je liever naar huis gaat !! Maar: "Nog een rit invoeren Ja/Nee".... Is dat het geintje wat je bedoelde?

Verder weer helemaal bedankt, ik ga er nu mee verder en je hoort spoedig van mij.
 
Beste SNB en/of gast0660,

Bedankt voor jouw inbreng.

Een aantal zaken zou ik graag willen veranderen maar weet helaas niet hoe ik dat moet doen;

1. Kenteken (kan hier een standaard vermelding komen van het kenteken dat het meest gebruikt wordt? Scheelt een handeling)

2. Ritcode: dit haalt het systeem uit sheet "DATA". Echter is ritcode geen goede benaming, moet eigenlijk zijn "Doel of omschrijving" Dat kan dus altijd een andere reden zijn. In sommige gevallen kan het eenzelfde soort rit zijn, bijv. Woon-werkverkeer of offerte opnemen. Daarom lijkt het mij handig dat het systeem kijkt in kolom C wanneer je begint te typen en dat deze met een voorstel komt, eigenlijk zit deze functie er al in, alleen moet deze niet kijken in kolom A van Sheet 'data' maar in kolom C van sheet "Rittenadministratie".

3. Verspringen van de cursur vanaf Ritcode gaat niet goed, dat moet worden km begin --> km einde --> Plaats van vertrek --> plaats bestemming --> Alt route --> Opslaan

4. Plaats van vertrek: Graag een standaard vermelding van de meest voorkomende plaats in kolom J van de afgelopen 5 ritten (je kan immers zijn verhuisd).

5. Het systeem zet de ritnummers niet meer in kolom D, hetgeen vast aan jouw (SNB) aandacht is ontsnapt.

Als dat is verholpen ben ik volgens mij helemaal geholpen. Heren...heel hartelijk bedankt, dit was mij zonder jullie hulp nooit gelukt. Bovendien leer ik veel van deze techniek die ik ook in andere programma's wil en kan gebruiken.

Groet, Robert
 
Hoi Robert,
ja dat was inderdaad het geintje:):thumb:

3. Verspringen van de cursur vanaf Ritcode gaat niet goed, dat moet worden km begin --> km einde --> Plaats van vertrek --> plaats bestemming --> Alt route --> Opslaan
Waarschijnlijk bedoel daar mee het gebruik van Tab stop
zie aangepast vbtje
alleen moet deze niet kijken in kolom A van Sheet 'data' maar in kolom C van sheet "Rittenadministratie
Is makkelijk aanpasbaar maar als je in Kolom C 400 keer offerte hebt staan krijg je ook in de lijst 400 keer offerte, het lijkt mij toch beter om het blad data te gebruiken. Als jij daar dan doel of omschrijving of offerte Robert of wat dan ook inzet, dat maakt verder niets uit, ik heb ritcode alleen gebruikt als vb
Zie aangepast vbtje
Kenteken (kan hier een standaard vermelding komen van het kenteken dat het meest gebruikt wordt? Scheelt een handeling)
Als het meest gebruikte kenteken vaststaat, direct opgelost
zie aangepast vbtje
De rest moet ik nog eens goed bekijken
Groet
 

Bijlagen

Hoi Snb, de excelgoeroe onder ons:):thumb:
idd mooie code, neem ik deze kennis alvast weer mee
Groet
 
Hoi DotchiJack,

Weer helemaal top wat jij voor mooie wijzigingen hebt aangebracht.

Wel vreemd dat de datumnotatie Amerikaans is :o. Kan dat gewijzigd worden?

Om toch een stukje gemak te hebben van wat er inmiddels is opgenomen in de kolom ritcode, had ik gedacht dat je in kolom A van "Data" kijkt wat er in kolom C van sheet "Rittenadministratie" inmiddels staat en wanneer dat niet overeenkomt deze wordt toegevoegd aan kolom A...Mits dat niet een te lastige code is natuurlijk.

Alvast weer bedankt...

Groet, Robert
 
Hoi Robert,
Zoals je weet ik ben een vroege vogel, na 19:00 uur denk ik niet meer na:), die datumnotatie zal in ieder geval geen proleem zijn (had er nog geen erg in) , ik duik er morgen nog wel eens in
Zoals ik al een paar keer heb doorgegeven op diverse postjes met try and error komen we er wel
Groet
 
Datum van textbox naar werkblad.
Code:
ws.Cells(iRow, 2).Value = CDate(datum)

Ps. 'Me' is een overbodig gebruik.
 
Harrie bedankt. Dat werkt prima. :thumb:

Ik ben alleen nog niet zo heel erg gelukkig wanneer er een andere auto wordt gekocht en ik in lengte van dagen hetzelfde kenteken blijf zien. Mijn voorkeur zou meer zijn dat dit geen vaste tekst in vba is maar bijv. het kenteken dat in cel data/B3 staat.
 
Verwijder de 'Rowsource' in de eigenschap van de combobox.
In de Initialze van het form.
Code:
kenteken.List = Sheets("data").Range("b3:b" & Sheets("data").Cells(Rows.Count, 2).End(xlUp).Row).Value
of:
Code:
kenteken.List = Sheets("data").Range("b3", Sheets("data").range("b3").end(xldown)).Value
of:
Code:
kenteken.List = Sheets("data").Cells(1).currentregion.columns(2).offset(2).specialcells(2).value
 
Dank je Harrie,

Helaas werkt het niet (heb alle drie geprobeerd), de userform laat niet het kenteken zien uit cel B4. Hieronder staan de codes zoals jij voorgesteld hebt, wellicht dat de locatie niet juist is.

Code:
Sub UserForm_Initialize()
datum.Value = Date
TextBox1.Value = WorksheetFunction.Max(Worksheets("Rittenadministratie").Range("D8:D1000")) + 1
ListBox1.ColumnWidths = "60;60;80;60;5;60;60;60;5;80;80;80;"
ListBox1.ColumnCount = 12
ListBox1.List = Sheets("Rittenadministratie").Range("a8:l" & [a65536].End(3).Row).Value
'kenteken.List = Sheets("data").Range("b3:b" & Sheets("data").Cells(Rows.Count, 2).End(xlUp).Row).Value
'kenteken.List = Sheets("data").Range("b3", Sheets("data").Range("b3").End(xlDown)).Value
kenteken.List = Sheets("data").Cells(1).CurrentRegion.Columns(2).Offset(2).SpecialCells(2).Value
End Sub

Groet, Robert
 
Even een vraagje.
Waar wil je wat zien.
Ik begrijp cel data!B3 in ........???
 
Hoi gast0660,

Wederom heel erg bedankt, ben weer een stuk dichter bij een heel mooi eindproduct. (Harrie ook bedankt!!!)

Ik zou graag bij: Me.vertrek.Value = "Assen" - Assen willen laten vervangen door de vertrek locatie dat het "vaakst" voor komt in kolom J vanaf regel 8. Het is nl. niet ondenkbaar dat ik ga verhuizen en dan blijft Assen altijd staan.

T.a.v. Me.bestemming.Value = "" zou ik graag dat het systeem kijkt in kolom K range 8 t/m 1000 (of oneindig) en wanneer je begint te type in dat veld dat het systeem met een voorstel komt a.d.h.v. een eerder gekozen bestemming.

Alvast weer heel erg bedankt.

Groeten, Robert
 
Hoi Robert,
Volgende aanpassingen:

Ik zou graag bij: Me.vertrek.Value = "Assen" - Assen willen laten vervangen door de vertrek locatie dat het "vaakst" voor komt in kolom J vanaf regel 8. Het is nl. niet ondenkbaar dat ik ga verhuizen en dan blijft Assen altijd staan.
De waarde "Assen" wordt nu uit cel C2 gehaald in het blad Data, gewoon aan te passen naar wens, of als je verhuist (naam aanpassen gaat waarschijnlijk sneller dan de verhuis:))
T.a.v. Me.bestemming.Value = "" zou ik graag dat het systeem kijkt in kolom K range 8 t/m 1000 (of oneindig) en wanneer je begint te type in dat veld dat het systeem met een voorstel komt a.d.h.v. een eerder gekozen bestemming.
De tekstbox bestemming is nu een combobox (met autofill), typ maar één of meerdere lettertjes in bij bestemming, Kan je ook toepassen bij ritcode en nummerplaten.
Volgens de vraag van hellboy
zou je mischien een extra aanpassing aan je progje willen doen. Stel dat iemand data wil aanpassen via het userform, hoe kun je dan de regel weer ophalen en weer terugschrijven op precies dezelfde lijn.
Zit er nu ook in, zie tweede formuliertje
Groet
 

Bijlagen

Hoi gast0660,
Leuk dat je het aanpas stuk nog gemaakt hebt :thumb: , ik zal dit zeker gaan bestuderen.
Hardstikke bedankt, dit kan ik proberen te implementeren in mijn eigen progje.
groetjes rob
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan