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

fout bij wegschrijven uit UserForm

Status
Niet open voor verdere reacties.

bowlingman

Gebruiker
Lid geworden
17 okt 2007
Berichten
433
Hallo,
Ik heb een prog met een frm om scores weg te schrijven. (Voor het gemak ga ik de sheets hier Blad1 en Blad2 noemen)
Het wegschrijven gebeurd met de volgende code
Code:
Private Sub cmbWegschrijven_Click()
If OptMetropool1 Then XX = 4
If OptMetropool2 Then XX = 11
If OptMetropool3 Then XX = 18

X = cboSpeeldag * 13 - 7


With Sheets("Scores")
    .Cells(X, XX).Resize(, 4) = Array(PtnThuis1, PtnBezoekers1, PinsThuis1, PinsBezoekers1)
    .Cells(X + 1, XX).Resize(, 4) = Array(PtnThuis2, PtnBezoekers2, PinsThuis2, PinsBezoekers2)
    .Cells(X + 2, XX).Resize(, 4) = Array(PtnThuis3, PtnBezoekers3, PinsThuis3, PinsBezoekers3)
    .Cells(X + 3, XX).Resize(, 4) = Array(PtnThuis4, PtnBezoekers4, PinsThuis4, PinsBezoekers4)
    .Cells(X + 4, XX).Resize(, 4) = Array(PtnThuis5, PtnBezoekers5, PinsThuis5, PinsBezoekers5)
    .Cells(X + 5, XX).Resize(, 4) = Array(PtnThuis6, PtnBezoekers6, PinsThuis6, PinsBezoekers6)
End With
For i = 1 To 6
    Me("PtnThuis" & i).Value = ""
    Me("PtnBezoekers" & i).Value = ""
    Me("PinsThuis" & i).Value = ""
    Me("PinsBezoekers" & i).Value = ""
Next
End Sub
De scores worden goed weggeschreven naar Blad1 en deze worden met vert.zoeken overgebracht naar Blad2 en het is daar dat er iets mis loopt.
Wanneer een wedstrijd niet wordt gespeeld blijven txt's op het frm leeg en op Blad1 ook, maar op Blad2 verdwijnen de nullen en krijg ik daar bij de optelling "waarde"
En in de kolom waar de wedstrijden worden getelt (ook op Blad2) met de formule
HTML:
=Als(Cel>0;"1";"0")
komt dan "1"
Wanneer ik in de txt's een "0" zet komt dit ook op Blad1 en Blad2 en krijg ik ook "waarde" bij de optelling en hier is de cel van de wedstrijden ook "1"
Als ik bij de niet gespeelde wedstrijd handmatig nullen inbreng blijft alles wel correct.

Daarom heb ik een testje (met maar 1 txt) gemaakt en daar loopt alles perfect
Wordt weggeschreven naar B1 en op Blad2 is alles zoals het hoort (kolom F aantal wedstrijden en kolom G de optelling
Code:
Private Sub CommandButton1_Click()
    With Sheets("Blad1").Cells(Rows.Count, 2).End(xlUp).Offset(1)
            For Each c In Sheets("Blad1").Range("A2:B2")
                    For i = 1 To 1
                        c.Offset(, i) = Me("Textbox" & i).Value
                        Me("Textbox" & i).Value = ""
                    Next
            Next
    End With
End Sub

Grtjs.
Armand
 

Bijlagen

  • Test.xlsm
    21,1 KB · Weergaven: 32
Het bestand plaatsen met het probleem lijkt me beter dan het plaatsen van een ander bestand dat wel werkt.

Op basis van wat je schrijft denk ik dat het nesten van je Vert.Zoeken in een ALS.FOUT al een heel eind komt.
 
Laatst bewerkt:
Hallo SjonR

Ik dacht dat het met een testje wel zou lukken.
Hier dan het bestand met het probleem
Testen kan het beste gebeuren met scores in op het frm speeldag 20 te kiezen en dan zie je wat er gebeurt op de sheet "RankingBerekening" onder de reeks "Speeldag 20"

Grtjs.
Armand
 

Bijlagen

  • Inter Teamscores.xlsm
    342,5 KB · Weergaven: 52
Op welk knopje in welk tabblad mogen de testers drukken?
 
(Voor het gemak ga ik de sheets hier Blad1 en Blad2 noemen)
Voor wiens gemak?

Gebruik geen + in combinatie met SUM. Tekst + getal geeft een fout. Sum range getallen en tekst gaat wel goed.
Code:
=SUM(D4;G4;J4;M4;P4;S4;V4;Y4;AB4;AE4;AH4;AK4;AN4;AQ4;AT4;AW4;AZ4;BC4;BF4;BI4;BL4;BO4)
Probeer het voor het gemak maar in blad11.
 
Hallo Harry,

Op de Startpagina "Uitslagen Inbrengen"

Grtjs.
Armand
 
Laatst bewerkt:
Waarom maak je er tekst van?

Code:
=ALS(BJ4>0;"1";"0")
Code:
=ALS(BJ4>0;1;0)
Code:
=1*(BJ5>0)

Die knop kan ik nergens vinden op pagina 'Start'.
 
Laatst bewerkt:
Hallo Harry,

Had gezien dat ik fout was en had het al verbeterd

Grts.
Armand
 
Ik heb een vermoeden dat op de een of andere wijze de getallen uit de textboxen worden weggeschreven als tekst en niet als getallen.
Zou dat kunnen.

Grtjs.
Armand
 
hoe worden de getallen weggeschreven als je je arrays verandert zoals dit?
Code:
Array(PtnThuis1.Value, PtnBezoekers1.Value, PinsThuis1.Value, PinsBezoekers1.Value)
 
Super bedankt Harry, Jack, SjonR

Alles werkt nu perfect met jullie hulp

@Harry
Wat ik niet wist is dat de dubbele quotes, van getallen tekst maken.

Zo leer ik telkens weer wat bij.

Grtjs.
Armand
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan