• 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 wordt als text weg geschreven ipv waarde in euro's

Status
Niet open voor verdere reacties.

Andre175

Gebruiker
Lid geworden
2 feb 2018
Berichten
351
weer iets waar ik niet uit kom, leer steeds iets nieuws maar toch te weinig kennis om dit op te lossen.

een tabel met 2 kolommen.
kolom 1: datum
kolom 2: Tarief in euro's

in userform een listbox, en 2 knoppen (Save en Delete)

Delete werkt goed, verwijderd de selectie van de listbox

Save slaat het nieuwe tarief wel op, echter wordt het als texst weg geschreven.
Wel keurig met een Euro-teken ervoor.

zou het graag zo zien dat het als waarde weg geschreven wordt.



Bekijk bijlage uurtarief.xlsb
 
je verwacht het niet toch? dat een tekstbox de waarden wegschrijft als tekst :)

kleine aanpassing zet *1 achter de regel die de .value in de cel plaatst

Code:
Private Sub CmdbSaveTar_Click()

With Sheets("Tabel_Uurtarief")
Tarief = TbTarief
TbTarief = FormatCurrency(Tarief, 2)
    lr = .Range("B" & Rows.Count).End(xlUp).Row + 1
            .Range("B" & lr) = CDate(TbDate)
            .Range("C" & lr) = Me("TbTarief").value[COLOR="#FF0000"] * 1[/COLOR]
End With
    TbTarief.value = vbNullString
    TbDate.value = vbNullString
 
Nou...ehhh...
Dacht dat het door de code ".Value" betekende dat het als waarde weg geschreven zou worden.
Is dus blijkbaar niet het geval. :D
 
Het maakt niet uit waar de tabel staat.
Ook niet of je een punt typt van je numerieke toetsenbord of de komma.

Code:
Private Sub CmdbSaveTar_Click()
With Sheets("Tabel_Uurtarief").ListObjects(1)
 .Range.Cells(1, 1).Offset(.ListRows.Count).Resize(, 2) = Array(CDate(TbDate), Replace(TbTarief, ",", "."))
 End With
   TbTarief.value = ""
    TbDate.value = ""
End Sub
 
Ook al heb ik hier geen nummeriek toetsenbord op mijn Samsung 500T Tablet pc.....
een . of een , kan ik natuurlijk wel ff proberen.

het maakt idd niet uit, wordt idd keurig als Euro's met een komma weg gezet in de tabel.
echter.... het wordt steeds in rij 5 weg gezet ipv de eerst volgende lege rij.

dan moet het zo toch worden?

Code:
Private Sub CmdbSaveTar_Click()
With Sheets("Tabel_Uurtarief").ListObjects(1)
 .Range.Cells(1, 1).Offset(.ListRows.Count [COLOR="#FF0000"]+ 1[/COLOR]).Resize(, 2) = Array(CDate(TbDate), Replace(TbTarief, ",", "."))
 End With
   TbTarief.value = ""
    TbDate.value = ""
End Sub


het werkt iig wel
 
Je hebt gelijk. :thumb:
 
Weer een betere oplossing dan ik had verwacht.
om iets zo gebruiksvriendelijk mogelijk te maken..... komt genoeg bij kijken.
Dit helpt iig wel.

(nu mijn Tablet pc nog een vernieuwen....:confused: Regelmatig foutmelding wat niets met foutieve code's te maken heeft. Denk eerder door te weinig geheugen ofzo.
Outlook loopt ook steeds vast en excel doet soms vreemde dingen)
 
Laatst bewerkt:
Of
gebruik geen rowsource, maar

Code:
Private Sub UserForm_Initialize()
  LbTar.List = Blad5.ListObjects(1).DataBodyRange.value
End Sub

Code:
Private Sub CmdbSaveTar_Click()
   LbTar.AddItem
   LbTar.List(LbTar.ListCount - 1, 0) = CDate(TbDate)
   LbTar.List(LbTar.ListCount - 1, 1) = CDbl(TbTarief)
   
'   Sheets("Tabel_Uurtarief").ListObjects(1).DataBodyRange.Resize(LbTar.ListCount) = LbTar.List
End Sub

Ik zou overigens het werkblad pas aanpassen bij het afsluiten van het userform (vermijd overbodige interaktie met het werkblad).
 
Wat is een overbodige interaktie met het werkblad...... deze gegevens zijn wel nodig als er een faktuur opgemaakt wordt.
het maken van de faktuur gebeurd in dezelfde Form op een andere pagina.
Lijkt mij dat er dan wel op deze manier weggeschreven moet worden.
Plus het feit dat de gebruiker nu in de listbox het nieuwe tarief staat.

Wat zijn nu de voor- en nadelen van het gebruik van Rawsource?
ik heb meerdere listboxen en gebruik op dit moment beide manieren om de boxen te vullen...
Het enigste verschil dat ik tot nu toe ondervind is dat bij rawsource het mogelijk is om kolomkoppen over te nemem.
Op de andere manier lukt het me (nog) niet
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan