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

Textbox

Status
Niet open voor verdere reacties.

theo beurskens

Gebruiker
Lid geworden
19 dec 2008
Berichten
29
Ik gebruik textboxen in een userform die ik laat vullen met de inhoud van cellen uit een regel van een lijst. Ik kan bij wijzigingen in een textbox de gegevens laten opslaan in dezelfde rij; maar ik heb totaal 45 textboxen en ik wil eigenlijk als er één wijzigt alle 45 opgeslagen worden. Opvragen en opslaan gebeurt in een loopje. Ik zou een string kunnen maken van alle textboxen bij elkaar, en dan kijken of hij verandert. Maar is er niets op binnen een userform te bekijken of de inhoud van een textbox verandert.
 
Ik gebruik textboxen in een userform die ik laat vullen met de inhoud van cellen uit een regel van een lijst. Ik kan bij wijzigingen in een textbox de gegevens laten opslaan in dezelfde rij; maar ik heb totaal 45 textboxen en ik wil eigenlijk als er één wijzigt alle 45 opgeslagen worden. Opvragen en opslaan gebeurt in een loopje. Ik zou een string kunnen maken van alle textboxen bij elkaar, en dan kijken of hij verandert. Maar is er niets op binnen een userform te bekijken of de inhoud van een textbox verandert.

Het is mij niet helemaal duidelijk waarom je zou controleren of een Textbox is veranderd omdat je toch opslaat, maar je zou ook een loop kunnen gebruiken om de waarde van de textboxen te vergelijken met de cel waarnaar ze verwijzen.

Met vriendelijke groet,


Roncancio
 
Als er iets verandert, wil ik vragen of ze de veranderingen willen opslaan of annuleren.
Dus als ze naar een ander record gaan, of stoppen.
 
Val gebruikers niet lastig met overbodige vragen. Maak een controle in het userform, zodat, als er iets verandert in een van de tekstvakken een 'opslaan'-knop zichtbaar wordt.

Voorbeeld
Sla de gegevens van rij 4 op in een tekstvariabele c0

Code:
c0=join(worksheetfunction.transpose(sheets(1).cells(4,1).resize(,45)),"")

Private sub TextBox1_Change()
   kontrole
End Sub

Private sub TextBox2_Change()
   kontrole
End Sub

Private sub kontrole()
 Knop_opslaan.visible=c0=Texbox1.Text &  Textbox2.Text &  ....... & TextBox45.text
End Sub
 
Laatst bewerkt:
Ik wil inderdaad de knop opslaan en annuleren enablen en de andere disablen. Maar op deze manier moet ik nog 45x TextBoxX_Change() gebruiken. Dan hoef ik ook niet er één string van te maken.
 
De logica tussen je laatste 2 zinnen ontbreekt.
 
Als ik controleer of de inhoud van een box verandert kan ik daarmee direct de knoppen laten aanpassen, dan heb ik geen tekenreeks van alle boxen nodig. Binnen één record kunnen dan meerdere boxen worden aangepast; hij kan pas naar het volgende of vorige record als hij opslaan of annuleren drukt. Dit is het probleem niet. Maar ik wil eigenlijk niet 45 keer

Private sub TextBoxX_Change()
aangepast
End Sub

erin hebben.
 
Dan zul je met een klassemodule moeten gaan werken.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan