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

Hoe volgende cel selecteren?

Status
Niet open voor verdere reacties.

svekkes

Gebruiker
Lid geworden
4 nov 2007
Berichten
108
Aan allen,

Ik heb een stukje code waarmee ik gegevens van het ene formulier naar het andere kan zetten. Maar als ik dan een nieuwe wil ingeven blijft hij de verkeerde gegevens invullen. Hoe kan ik ernu voor zorgen dat telkens de juiste gegevens worden ingevuld? Dus eigenlijk dat hij de volgende cellen neemt.

Code:
Private Sub UserForm_Initialize()
txtDatum.Value = Sheets("Prospecten").Range("A3")
txtNaam.Value = Sheets("Prospecten").Range("B3")

End Sub

Alvast bedankt voor de eventuele antwoorden.:thumb:
 
Laatst bewerkt door een moderator:
Aan allen,

Ik heb een stukje code waarmee ik gegevens van het ene formulier naar het andere kan zetten. Maar als ik dan een nieuwe wil ingeven blijft hij de verkeerde gegevens invullen. Hoe kan ik ernu voor zorgen dat telkens de juiste gegevens worden ingevuld? Dus eigenlijk dat hij de volgende cellen neemt.

Private Sub UserForm_Initialize()
txtDatum.Value = Sheets("Prospecten").Range("A3")
txtNaam.Value = Sheets("Prospecten").Range("B3")

End Sub

Alvast bedankt voor de eventuele antwoorden.:thumb:

Je verwijst steeds naar cellen A3 en B3. Die verwijzingen zul je relatief moeten maken.
Tip: gebruik Offset in je code om de volgende cel selecteren.

Met vriendelijke groet,


Roncancio
 
Dag Roncancio,

Alvast bedankt voor je snelle reactie. Ik vermoedde zoal iets, maar aangezien ik eigenlijk een beginner ben op dit gebied was ik niet zeker.

Is het dan zoiets, als het volgende:

Code:
txtDatum.Value = Sheets("Prospecten").Range("A3").Offset(1,0).Select

Bedankt.
 
Laatst bewerkt door een moderator:
Dag Roncancio,

Alvast bedankt voor je snelle reactie. Ik vermoedde zoal iets, maar aangezien ik eigenlijk een beginner ben op dit gebied was ik niet zeker.

Is het dan zoiets, als het volgende:

txtDatum.Value = Sheets("Prospecten").Range("A3").Offset(1,0).Select

Bedankt.

Ja, maar het nadeel van deze formule is dat deze altijd verwijst naar A4.

Met vriendelijke groet,


Roncancio
 
Verdorie, dat is waar.

Ik zal mijn stukje code dan als volgt moeten schrijven:

Code:
txtDatum.Value = Sheets("Prospecten").Range("$A3").Offset(1,0).Select
 
Laatst bewerkt door een moderator:
Verdorie, dat is waar.

Ik zal mijn stukje code dan als volgt moeten schrijven:

txtDatum.Value = Sheets("Prospecten").Range("$A3").Offset(1,0).Select

Dat blijft hetzelfde!:shocked:


Met vriendelijke groet,


Roncancio
 
Wat ik bedoel is zoiets:

ActiveCell.Offset(1, 0).Select

Stel A1 is geselecteerd. Na het runnen van de regel, wordt A2 geselecteerd, vervolgens A3, etc.

Met vriendelijke groet,


Roncancio
 
Dan zou het stukje code zoiets moeten worden, zonder een verwijzing naar een specifieke cel:

Code:
txtDatum.Value = Sheets("Prospecten").ActiveCell.Offset(1,0).Select

Zoals ik al zei: ben een leek op dit gebied.
 
Laatst bewerkt door een moderator:
Dan zou het stukje code zoiets moeten worden, zonder een verwijzing naar een specifieke cel:

txtDatum.Value = Sheets("Prospecten").ActiveCell.Offset(1,0).Select

Zoals ik al zei: ben een leek op dit gebied.

De code kan je zo niet gebruiken.
Kan je een voorbeeld sturen van het programma zonder gevoelige informatie en aangeven wat je waarmee wilt vullen?

Met vriendelijke groet,


Roncancio
 
hierbij vind je het volledige document.
Zal wat uitleg geven. Op het 1ste formulier moet men klantgegevens invullen en op het 2de formulier begint men de producten in te vullen. Het is de bedoeling dat op het 2de formulier zowel de datum als de klantnaam worden ingevuld in het txtboxje vanuit het 1ste formulier.

Van de rest moet je niet teveel aantrekken. Ben hierin nog wat aan het rommelen en experimenteren.

Alvast bedankt voor je hulp.:thumb:
 

Bijlagen

hierbij vind je het volledige document.
Zal wat uitleg geven. Op het 1ste formulier moet men klantgegevens invullen en op het 2de formulier begint men de producten in te vullen. Het is de bedoeling dat op het 2de formulier zowel de datum als de klantnaam worden ingevuld in het txtboxje vanuit het 1ste formulier.

Van de rest moet je niet teveel aantrekken. Ben hierin nog wat aan het rommelen en experimenteren.

Alvast bedankt voor je hulp.:thumb:

Ik heb de code aangepast zodat als je op de knop klikt de waardes van de datum en naam ook naar het 2e formulier gaan. De overige codes heb ik zoveel mogelijk ongemoeid gelaten hoewel ik soms de neiging niet kon onderdrukken om wat aan te passen.

Even een tip: Je hoeft niet eerst een waarde van een tekstbox naar een cel te verplaatsen om het in de 2e formulier te plaatsen.
Wat je ook kan doen is:
txtDatum.value = formulier1.txtDatum.value

Met vriendelijke groet,


Roncancio
 
Laatst bewerkt:
Ik heb het juist geprobeerd en zo had ik het inderdaad graag gehad. Mijn dank daarvoor.
Nu is er wel een ander probleempje bijgekomen. Wanneer de gegevens dan worden ingevuld komen zij op de verkeerd rij te staan. De gegevens zouden eigenlijk op een nieuwe lege rij moeten komen. Dus onder de laatst ingevulde rij met de productnaam.

Dit zal waarschijnlijk ook met Offset moeten gebeuren.

Voor mij moet je je niet teveel inhouden om aan de code wat te veranderen. Als het simpeler kan, dan mag het. Kwestie van zelf nog wat te leren.
 
Ik heb het juist geprobeerd en zo had ik het inderdaad graag gehad. Mijn dank daarvoor.
Nu is er wel een ander probleempje bijgekomen. Wanneer de gegevens dan worden ingevuld komen zij op de verkeerd rij te staan. De gegevens zouden eigenlijk op een nieuwe lege rij moeten komen. Dus onder de laatst ingevulde rij met de productnaam.

Dit zal waarschijnlijk ook met Offset moeten gebeuren.

Voor mij moet je je niet teveel inhouden om aan de code wat te veranderen. Als het simpeler kan, dan mag het. Kwestie van zelf nog wat te leren.

Ik weet niet precies waar je de gegevens wilt plaatsen, aangezien de datum op de 1e lege regel staat.
In plaats van .Offset kan je gebruiken maken van End([richting]) om de laatste ingevulde regel van een kolom te zoeken.

iRij = Range("A65536").End(xlUp).row

iRij heeft nu de waarde van de eerstvolgende rij (gerekend van A65536) die gevuld is. (er vanuit gaan dat A65536 leeg is). Dus voor de volgende regel moet je dus +1 toevoegen.
Dus:

iRij = Range("A65536").End(xlUp).row +1

Met vriendelijke groet,


Roncancio
 
Het is eigenlijk de bedoeling dat de gegevens als volgt worden ingevuld:
KolomA= Datum, KolomB= Naam, KolomC= Product, enz. Wanneer er dan nog producten voor dezelfde worden ingevuld komen deze reeds in de juiste kolom terecht.
Bij meerdere producten blijven de A en B kolom dus leeg.
Bij een nieuwe naam, moet de datum terug in kolomA komen enzo voort.

Eigenlijk moet ik dus gaan kijken in de C kolom voor de laatst ingevulde gegevens en dan moet de eerst volgende lege cel in de A kolom geselecteerd worden om de nieuwe gegevens in te vullen.

iRij = Range("C65536").End(xlUp).row +1
 
Het is eigenlijk de bedoeling dat de gegevens als volgt worden ingevuld:
KolomA= Datum, KolomB= Naam, KolomC= Product, enz. Wanneer er dan nog producten voor dezelfde worden ingevuld komen deze reeds in de juiste kolom terecht.
Bij meerdere producten blijven de A en B kolom dus leeg.
Bij een nieuwe naam, moet de datum terug in kolomA komen enzo voort.

Eigenlijk moet ik dus gaan kijken in de C kolom voor de laatst ingevulde gegevens en dan moet de eerst volgende lege cel in de A kolom geselecteerd worden om de nieuwe gegevens in te vullen.

iRij = Range("C65536").End(xlUp).row +1

YYYEEESSS :thumb::thumb::thumb::thumb::thumb:

Met vriendelijke groet,


Roncancio
 
Beste Roncancio,

Ge bent ongelooflijk bedankt voor alle hulp. Ik ben met jouw laatste stukje code wat aan het experimenteren geweest en jahoor, het werkt. De gegevens worden ingevuld op de juiste plaats enz.

Gewoonweg super. :thumb::thumb::thumb:

Ik zal de vraag op opgelost zetten.

Sven
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan