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

Het wegschrijven van data

Status
Niet open voor verdere reacties.

N12047

Gebruiker
Lid geworden
27 aug 2015
Berichten
56
Hallo allemaal,

Regelmatig krijgen wij op onze afdeling te maken met claims. Elke claim die binnenkomt, zal uitgezocht moeten worden. Het uitzoeken gebeurt in 20 delen (stappen). Afhankelijk van de hoeveelheid werk kan een deel 1 of meerdere werkdagen in beslag nemen en dat moet vastgelegd worden. Omdat wij al deze gegevens nu op papier invullen en deze af en toe kwijt zijn, willen we dit graag in Excel gaan bij houden,

Bijgaand een voorbeeldje waarbij het userform gemaakt is en er al enige vba achter zit.



Op het moment dat ik op button Open Userform klik, krijg ik een userform met een aantal checkboxen en twee textboxen.

Graag zou ik het volgende willen bereiken met het userform:

1. Vink een deel aan (1 t/m 20)
2. Vink een tekst aan (1 t/m 5)
3. Vul een begin datum in (format dd-mm-jj)
4. Vul een eind data in (format dd-mm-jj)
5. klik op Wegschrijven om deze data weg te schrijven naar het blad Data

Ga naar 1

Bij het klikken op Stoppen verlaat je weer het userform zonder gegevens weg te schrijven

Wat moet hij met deze gegevens doen zodra je op Wegschrijven hebt geklikt?
Als je een checkbox (voorbeeld) Deel1 aangevinkt hebt, moet hij de betreffende kolom op tabblad Data opzoeken.
Gevonden?
Dan de datum van – tot invullen in de betreffende kolom.
(in geval van Deel1 moet de datum ingevuld worden in kolom D vanaf regel 7 naar onderen.)
De gegevens van het bijbehorende label (Tekst) in kolom G plaatsen op de bijbehorende regel.

In het geval dat een onderzoek meerdere dagen in beslag neemt, moeten ook de tussenliggende data en tekst worden ingevuld. Dit kunnen ook dagen in het weekend zijn.

Een voorbeeld hoe ik het graag zou willen hebben staat op tabblad Voorbeeld.

Wie wil mij hiermee helpen?
 

Bijlagen

  • Helpmij.xlsm
    39,6 KB · Weergaven: 93
Ik wil je best wel helpen want meestal vind ik dergelijke projectjes wel leuk.
Voor jou zal de opzet waarschijnlijk wel duidelijk zijn maar voor mij is het voorlopig een raadsel.
Maar alvast een paar opmerkingen.
Access is beter gechikt voor dergelijke zaken
Userform:
Gebruik in ieder geval optionbuttons ipv checkboxen (al de select code is overbodig)
Waarom er een vertraging van 1 seconde op de knop sluiten zit is mij een raadsel
Opzet van uw blad data:
Ga je per claim een blad aanmaken
Nu heb je 5 blokken als vb, als dat er 20 moeten worden wordt dat een gescroll van hier tot Tokyo en waarom de lege stukken ertussen? (vb H,I en J tussen deel 1 en deel 2)
Wat moet er komen in E en F komen in deel1 bv
De 5 keuzes tekst hebben waarschijnlijk iets te maken met de textbox op blad info maar voor de rest???
En zo kan ik nog wel eventjes doorgaan met mij af te vragen wat je wilt bereiken
 
Beste Philiep,

Hartelijk bedankt voor je input.
inderdaad, voor mij is het opzetje duidelijk, ik werk er dan ook mee.
Dat Access beter is voor deze zaken kunnen we betwisten, zoveel data hoef ik niet weg te schrijven.
Het voorbeeld zegt misschien wat anders, maar het gaat om ongeveer 60-70 claims per jaar.
De code die er nu achter zit heb ik over genomen van een ander bestand wat ik gevonden heb op Helpmij.
Het maken van het Userform heeft mij bijna een week werk gekost.

Het enige wat ik graag wil, is dat de datums met bijbehorende tekst weggeschreven wordt op de goede plaats.
Op jou vraag wat er in de tussenliggende kolommen moet staan/gebeuren, helemaal niets.
Een keer per jaar wordt hier handmatig een codenummer ingezet en dit stelt niets voor.

Ik zou het op prijs stellen als je mij tips of een voorbeeldje kunt maken/geven om verder te kunnen.
En natuurlijk, de twintig delen mogen ook op 20 tabbladen komen als dat gemakkelijker is.
Hetzelfde geldt voor option buttons en dergelijke.
Voor verbeteringen en opmerkingen sta ik altijd open.

Ik hoop dat het hiermee iets duidelijker geworden is.

En Tokyo? Geweldige stad, kan ik je aanraden.
 
Ik ben er ondertussen al een beetje mee aan het spelen geweest.
Ondertussen is uw userform al volledig herwerkt.
Als je mij een beetje tijd geeft maak ik er wel een bruikbaar bestandje van .
Nog twee vraagjes:
de kaders deel 1 en deel2, enz mogen die tegen elkaar staan zonder tusseliggende kolommen?
De tekst, is dat veel tekst?
Edit:
Ik heb je vraag nogmaals doorgelezen en had dit over het hoofd gezien:eek:
De gegevens van het bijbehorende label (Tekst)
 
Laatst bewerkt:
Dat Access beter is voor deze zaken kunnen we betwisten, zoveel data hoef ik niet weg te schrijven.
Het voorbeeld zegt misschien wat anders, maar het gaat om ongeveer 60-70 claims per jaar.
Het niet om de hoeveelheid data hier maar om de eenvoud van het opzetten.. ik denk dat bdotchiejac dat bedoelt?
Access: kaal zonder opmaak misschien een half uur werk met rustig koffie drinken erbij... en dan ben ik nog een betrekkelijk amateur access bouwer.. ;)
Waarom: in Acces maak je de velden aan met de voorwaarden die je er aan stelt, dus alles is al geregeld, tekst of datum definities en keuzevakjes waar nodig.
Als je vervolgens een formulier automatisch aanmaakt en een beetje nog de keuzevakjes logisch bij de tesktvakken zet ben je al klaar.
Opslaan programeren? Niet nodig... in Access is invullen meteen opslaan....
Zo een formulier is overigens ook zelf in design mode vrij simpel te maken. Maak een query van de tabel waar alles gedefinieerd staat en met de velden daarvan ga je in het formulier aan de slag door ze toe te kennen aan een teskt of datum of keuzevakje.

Je kunt de database vervolgens met keuzemenus luxer maken, maar is helemaal niet noodzakelijk.
Er kunnen ook meer mensen tegelijk gebruik van maken als dat wenselijk is.

Maar je gaat er met Excel met de hulp van dotchiejac ook vast komen... maar denk een volgende keer toch aan Access...
Succes verder!
 
Laatst bewerkt:
@André,
wat een lap tekst:shocked:;),maar kort samengevat dit is idd wat ik bedoel met access gebruiken.
Ik ben net terug thuis en ga nog wat verder frullen met het bestandje van TS (op mijn terrasje met een fris pintje erbij:p)
 
Toch even uitleggen aan een leek hoe dat in elkaar zit.
Kan niet in 1 of 2 regels, nu kan iemand zich er een voorstelling van maken hoe dat vrij eenvoudig zou kunnen....
 
@ andre@home
Hartelijk bedankt dat je deze uitleg hebt gegeven over access.

@ Philiep
Geweldig dat je mij hiermee wilt helpen. Helemaal tof.

Ik heb gelezen dat je het userform opnieuw hebt ingericht zodat de data straks beter (anders) en misschien makkelijker is te verwerken.

Deel1 en deel2 enz mogen best tegen elkaar aankomen, daar kan ik best mee werken.
Alle lege kolommen die niet gebruikt worden mag je best weghalen.

En de tekst? dat is altijd maar 1 woord van maximaal 10 karakters. Er is wel een keuze uit vijf verschillende woorden.
Dus misschien in plaats van 5 maal een label een dropdown menu? Of kan dat niet in een userform?

Ben benieuwd naar je eerste opzetje.

Heel erg dank je wel voor nu.
 
Kijk eens of dit je goedkeuring kan wegdragen.

ps: Ik heb twee datumpickers genomen voor de datumvelden, indien dit niet op je systeem voorkomt krijg je foutmeldingen dan moet ik de datumpickers veranderen naar teksvelden.
 

Bijlagen

  • Claims.xlsb
    39 KB · Weergaven: 113
Als de tekst op rij 5 in blad 'data' gelijk is aan de tekst van de checkboxen.
Code:
Private Sub CommandButton1_Click()
Dim c As Range, j As Long, arr
If Label8.Caption <> "" And Label9.Caption <> "" And TextBox1 Like "##-##-##" And TextBox2 Like "##-##-##" Then
If CDate(TextBox2) >= CDate(TextBox1) Then
 With Sheets("data")
  Set c = .Rows(5).Find(Me("checkbox" & Val(Label8.Caption)).Caption, , , xlWhole)
   ReDim arr(CDate(TextBox2) - CDate(TextBox1) + 1, 3)
       For j = 0 To CDate(TextBox2) - CDate(TextBox1) + 1
         arr(j, 0) = CDate(TextBox1) + j
         arr(j, 3) = Me("label" & Val(Label9.Caption) - 20).Caption
       Next j
     .Cells(Rows.Count, c.Column).End(xlUp).Offset(1).Resize(UBound(arr), 4) = arr
  End With
End If
End If
MsgBox IIf(c Is Nothing, "alle controls aanvinken en/of juist invullen!", "gegevens zijn weggeschreven!")
End Sub

Of zonder loop.
Code:
Private Sub CommandButton1_Click()
Dim c As Range, arr, j As Long, datumrange As Range
If Label8.Caption <> "" And Label9.Caption <> "" And TextBox1 Like "##-##-##" And TextBox2 Like "##-##-##" Then
If CDate(TextBox2) >= CDate(TextBox1) Then
 With Sheets("data")
 Set c = .Rows(5).Find(Me("checkbox" & Val(Label8.Caption)).Caption, , , xlWhole)
 Set datumrange = .Cells(Rows.Count, c.Column).End(xlUp).Offset(1).Resize(CDate(TextBox2) - CDate(TextBox1) + 1)
     With .Cells(Rows.Count, c.Column).End(xlUp).Offset(1).Resize(datumrange.Rows.Count)
        .Value = CDate(TextBox1)
        datumrange.DataSeries , 3,1
        .Offset(, 3) = Me("label" & Val(Label9.Caption) - 20).Caption
     End With
  End With
End If
End If
MsgBox IIf(c Is Nothing, "alle controls aanvinken en/of juist invullen!", "gegevens zijn weggeschreven!")
End Sub
 

Bijlagen

  • Deel hsv.xlsb
    41,1 KB · Weergaven: 80
Laatst bewerkt:
Even andersom gedacht. Van papier naar een databasestructuur is een ander denkproces.

Elke claim heeft een eigen code toch? Als je alle gegevens van zo'n claim verzamelt in een tabel en dit voor alle claims doet dan maakt dit het leven toch een stuk eenvoudiger om per claim informatie te vergaren?
 

Bijlagen

  • Helpmij.xlsb
    25,8 KB · Weergaven: 102
Laatst bewerkt:
Even anders gedacht; ik heb zo een vermoeden dat we niets meer vernemen van Ts als ik zo het profiel bekijk.
Ik heb verscheidene vragen beantwoord van @N12047 zie ik, maar echt respons?

Misschien zit ik er dit keer geheel naast.
 
En daar denk ik maar niet over na;) TS is online dus we zien de reactie wel.
 
Duurt lang he. :d
 
Zijn ook best veel tekens om over te tikken en dan ook nog een ander idee....... Dat lukt natuurlijk bijna niemand binnen een maand:shocked:
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan