syntaxe VBA - SUR USERFORM - HELP

poolinn22

XLDnaute Nouveau
Bonsoir,

j'ai toujours des erreurs de compilation dans mon écriture VBA (si c'est pas avec with c'est if...)

pouvez vous m'aider?

merci !

Private Sub Validation_Click()

MONTANT = Format(MONTANT, "0.00")
RPOSTE.Value = RPOSTE & "%"
MaDate = Me.DATE_RELANCE & "/" & Me.MOIS_RELANCE & "/" & Me.ANNEE_RELANCE


With Feuil2
der = .Cells(Rows.Count, 1).End(3)(2).Row
.Cells(der, 1) = Date_Saisie
.Cells(der, 3) = Numero_affaire
.Cells(der, 4) = version


If Numero_affaire <> -1 And C1 Or C2 Or C3 Or C4 Or C5 Or C6 Or C7 Then
For i = 1 To 8
If Controls("C" & i) Then
a = i + i + 1
.Cells(der, 8) = Controls("C" & i).Caption
.Cells(der, 6) = Controls("T" & a)
.Cells(der, 12) = Controls("M" & a)
Next i


.Cells(der, 7) = NOM_OFFRE
.Cells(der, 9) = SOCIETE
.Cells(der, 10) = DEP_SOCIETE
.Cells(der, 11) = INTERLOCUTEUR
.Cells(der, 13) = RPOSTE
For y = 10 To 16
If Me("Op" & y) Then .Cells(der, 14) = Me("Op" & y).Caption
Next y
.Cells(der, 15) = CDate(MaDate)
.Cells(der, 21) = Commentaires



End If
End With




Unload Me
saisieclient.Show

End Sub
 

poolinn22

XLDnaute Nouveau
Re : syntaxe VBA - SUR USERFORM - HELP

Ok PAF, je te remercie, du coup je l'ai modifié

par contre, étant novice en EXCEL... j'ai un formulaire avec des checkbox. Si je sélectionne plusieurs checkbox, alors je crée x lignes sur ma feuille excel tout en garde les mêmes variables à coté... comment faire? ce qui est en rouge n'est pas bon...

merci de ton aide


Private Sub Validation_Click()

MONTANT = Format(MONTANT, "0.00")
RPOSTE.Value = RPOSTE & "%"
MaDate = Me.DATE_RELANCE & "/" & Me.MOIS_RELANCE & "/" & Me.ANNEE_RELANCE


With Feuil2
der = .Cells(Rows.Count, 1).End(3)(2).Row
.Cells(der, 1) = Date_Saisie
.Cells(der, 3) = Numero_affaire
.Cells(der, 4) = version
.Cells(der, 7) = NOM_OFFRE
.Cells(der, 9) = SOCIETE
.Cells(der, 10) = DEP_SOCIETE
.Cells(der, 11) = INTERLOCUTEUR
.Cells(der, 13) = RPOSTE
For y = 10 To 16
If Me("Op" & y) Then .Cells(der, 14) = Me("Op" & y).Caption
Next y
.Cells(der, 15) = CDate(MaDate)
.Cells(der, 21) = Commentaires



For i = 1 To 8
If Controls("C" & i) Then
der = .Range("A" & Rows.Count).End(xlUp).Row + 1
a = i + i + 1
.Cells(der, 6) = Controls("T" & a)
.Cells(der, 8) = Controls("C" & i).Caption
.Cells(der, 12) = Controls("M" & a)


End If
Next i
End If




End With



Unload Me
SaisieDP.Show

End Sub
 

Lone-wolf

XLDnaute Barbatruc
Re : syntaxe VBA - SUR USERFORM - HELP

Bonsoir poolinn, Paf

Pas besoin de: a = i + i + 1.

.Cells(der, 6) = Me.Controls("T" & i)
.Cells(der, 8) = Me.Controls("C" & i).Caption
.Cells(der, 12) = Me.Controls("M" & i)


A+ Lone-wolf :cool:
 
Dernière édition:

Lone-wolf

XLDnaute Barbatruc
Re : syntaxe VBA - SUR USERFORM - HELP

Re,

un test avec ceci:

Code:
Private Sub UserForm_Initialize()
With Feuil1
der = .Cells(Rows.Count, 6).End(xlUp).End(3)(2).Row
For i = 1 To 4
der = i + 1
Me.Controls("T" & i) = i + 1
.Cells(der, 6) = Trim(Me.Controls("T" & i))
Next
End With
End Sub



A+ :cool:
 
Dernière édition:

poolinn22

XLDnaute Nouveau
Re : syntaxe VBA - SUR USERFORM - HELP

Bonjour,

ci joint le fichier en question.

Décidément je n'y suis pas arrivée.

Je veux que qd les checkbox sont sélectionnés, cela génère autant de lignes que le nb de checkbox. ex:

Je coche
Nom qte montant nom des postes
x PSSJ 3 15000 pri-croc-barde
x PSSM 3 20000 carioca-fusil-bar-
x PSST 1 35000 marteau

en cliquant sur valider, ca me génère 3 lignes avec le même n° devis, la même date...

Merci de votre aide
 

Pièces jointes

  • SAISIE.xlsm
    30.2 KB · Affichages: 42
  • SAISIE.xlsm
    30.2 KB · Affichages: 48

Paf

XLDnaute Barbatruc
Re : syntaxe VBA - SUR USERFORM - HELP

re et bonjour à tous,

a priori

Code:
Private Sub Validation_Click()
     
    MONTANT = Format(MONTANT, "0.00")
    RPOSTE.Value = RPOSTE & "%"
    MaDate = Me.DATE_RELANCE & "/" & Me.MOIS_RELANCE & "/" & Me.ANNEE_RELANCE
    
    
    With Feuil2
    der = .Cells(Rows.Count, 1).End(3)(2).Row
        
    For i = 1 To 7
        If Me.Controls("C" & i) Then
            der = der + 1
            .Cells(der, 1) = Date_Saisie
            .Cells(der, 3) = Numero_affaire
            .Cells(der, 4) = version
            .Cells(der, 8) = SOCIETE
            .Cells(der, 9) = DEP_SOCIETE
            .Cells(der, 10) = INTERLOCUTEUR
            .Cells(der, 13) = RPOSTE
            For y = 10 To 14
                If Me("Op" & y) Then .Cells(der, 13) = Me("Op" & y).Caption
            Next y
            .Cells(der, 14) = CDate(MaDate)
            .Cells(der, 20) = Commentaires
    
            
     
            .Cells(der, 5) = Controls("Q" & i)
            .Cells(der, 6) = Controls("N" & i)
            .Cells(der, 7) = Controls("C" & i).Caption
            .Cells(der, 11) = Controls("M" & i)
        End If
    Next i
    
End With
    Unload Me
    UserForm1.Show
    
End Sub


A+
 

Discussions similaires

Réponses
7
Affichages
812

Statistiques des forums

Discussions
311 709
Messages
2 081 774
Membres
101 816
dernier inscrit
Jfrcs