Insérer le nom des checkboxs cochées dans une feuille excel

jennalex

XLDnaute Nouveau
Bonjour à tous et à toutes,

J'ai un soucis. Je remplis une feuille EXCEL grâce à une Userform.
Cette Userform possède une frame dans laquel il ya 8 checkbox.

Mon souhait serait que lorsque que je clique su ok, le nom de chaque checkbox coché soit inséré dans le tableau colonne 6, les uns en dessous des autres.

J'ai écrit un petit programme qui ne fonctionne pas :
Private Sub CBok_Click()

With Worksheets(1)
derlign = .Range("a65536").End(xlUp).Row + 1
.Cells(derlign, 1).Value = CBclient.Value 'Nom du client
.Cells(derlign, 2).Value = TBcodearticle.Value 'Code article
.Cells(derlign, 3).Value = TBof.Value 'of
.Cells(derlign, 4).Value = TBind.Value 'Désignation


''''''''''''''''''''''''''''Choix du setceur'''''''''''''''''''''''''''''''''

If OBstructure.Value = True Then
Cells(derlign, 5) = OBstructure.Caption
End If

If OBmecanosoude.Value = True Then
Cells(derlign, 5) = OBmecanosoude.Caption
End If


If OBchaudronnerie.Value = True Then
Cells(derlign, 5) = OBchaudronnerie.Caption
End If

''''''''''''''''''''''''''''Choix du type d'opération(s)'''''''''''''''''''''

If CheckBox9.Value = True Then Cells(derlign, 6) = CheckBox9.Caption
If CheckBox10.Value = True Then Cells(derlign, 6) = CheckBox10.Caption
If CheckBox11.Value = True Then Cells(derlign, 6) = CheckBox11.Caption
If CheckBox12.Value = True Then Cells(derlign, 6) = CheckBox12.Caption
If CheckBox13.Value = True Then Cells(derlign, 6) = CheckBox13.Caption
If CheckBox14.Value = True Then Cells(derlign, 6) = CheckBox14.Caption
If CheckBox15.Value = True Then Cells(derlign, 6) = CheckBox15.Caption
If CheckBox16.Value = True Then Cells(derlign, 6) = CheckBox16.Caption


End With



Actuellement il ne m'insère que le nom de la checkbox la plus lointaine coché.
Je m'explique :

Si je coche checkbox 9, 10, 13
Il insère seulement le nom de la checkbox13

Quelqu'un peut-il m'aider? svp?

Merci d'avance

Jennifer
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Insérer le nom des checkboxs cochées dans une feuille excel

Bonjour le fil, bonjour le forum,

Si tu avais pris le temps de nous envoyer un fichier exemple on aurait certainement fini... Et ne nous dit pas que le fichier et trop lourd... Il suffisait de partir d'un fichier vierge avec la même structure que l'original (nom des onglets concernés, plage nommées, formules, vba, etc.), y ajouter une poignée de données non confidentielles et le tour était joué... Mais ça, on peut pas le faire à ta place !
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Insérer le nom des checkboxs cochées dans une feuille excel

Bonjour le fil, bonjour le forum,

Je sais pas ce qui se passe avec ton fichier mais quand je veux passer de VBE au fichier ça plante tout...

L'essai que j'avais fait était conluant mais j'ai pu tester qu'une fois.
Pourquoi ce Static i dans la macro Open du composant ThisWorkbook ? J'ai remplacé i par j (avec un Dim j As Byte) dans le code du bouton Ok mais comme je te l'ai dit plus haut tout a planté. Comme je suis sous excel 2003 je ne sais pas ce qu'est cette sélection (cadre bleu) avec un astérisque bleue en colonne A. C'est peut-être ça...
 

jennalex

XLDnaute Nouveau
Re : Insérer le nom des checkboxs cochées dans une feuille excel

Le static x est une variable mémoire. J'ai appris cela en cours d'informatique. Elle permet de mémoriser ce qui est écrit et d'écrire d'écrir dans les lignes en-dessous. Normalement. Mais je n'ai pas su bien l'utiliser je pense.
La seule chose particulière dans la colonne A est la bouton que j'ai créé pour exécuter ma macro. C'est peut-être ça.
Je vais faire les modofications que tu proposes.

Je te remercie en tout cas pour le temps que tu m'accordes!
ça m'aide beaucoup!

A ++

Jenn
 

jennalex

XLDnaute Nouveau
Re : Insérer le nom des checkboxs cochées dans une feuille excel

Malheureusement quand je reclique sur ok les données précédentes sont écrasées.
Je ne comprend pas pourquoi ça fonctionne pour les autres colonnes et pas pour la colonne 6.


Jenn
 
G

Guest

Guest
Re : Insérer le nom des checkboxs cochées dans une feuille excel

Bonjour à tous,

Je ne comprend pas pourquoi ça fonctionne pour les autres colonnes et pas pour la colonne 6.

Normal, ta colonne de référence est la colonne A dans:
Code:
derlign = .Range("A65536").End(xlUp).Row + 1

Prend la colonne F comme référence pour chercher la prochaine ligne vide.

Ou alors par la méthode Find:

Code:
Private Sub CBok_Click()
    Dim derlign As Long
    With Worksheets(1)
        On Error Resume Next
        derlign = .Cells.Find(What:="*", _
                            After:=sh.Range("A1"), _
                            Lookat:=xlPart, _
                            LookIn:=xlFormulas, _
                            SearchOrder:=xlByRows, _
                            SearchDirection:=xlPrevious, _
                            MatchCase:=False).Row
        On Error GoTo 0
        derlign = derlign + 1
        
        .Cells(derlign, 1).Value = CBclient.Value           'Nom du client
        .Cells(derlign, 2).Value = TBcodearticle.Value      'Code article
        .Cells(derlign, 3).Value = TBof.Value               'of
        .Cells(derlign, 4).Value = TBind.Value              'Désignation

        ''''''''''''''''''''''''''''Choix du setceur''''''''''''''''''''''''''''''

        If OBstructure.Value = True Then
            .Cells(derlign, 5) = OBstructure.Caption
        End If
        If OBmecanosoude.Value = True Then
            .Cells(derlign, 5) = OBmecanosoude.Caption
        End If

        If OBchaudronnerie.Value = True Then
            .Cells(derlign, 5) = OBchaudronnerie.Caption
        End If
        ''''''''''''''''''''''''''''Choix du type d'opération(s)'''''''''''''''''''''

        Dim i
        For i = 9 To 16
            If Me.Controls("CheckBox" & i) Then
                .Cells(derlign, 6) = Me.Controls("CheckBox" & i).Caption
                derlign = derlign + 1
            End If
        Next i
        ' If Me.Controls("CheckBox" & i) Then .Cells(derlign, 6) = Me.Controls("CheckBox" & i).Caption
        ' derlign = derlign + 1
        'Next i
    End With

End Sub

A+
 

jennalex

XLDnaute Nouveau
Re : Insérer le nom des checkboxs cochées dans une feuille excel

ouf!!!!!

MERCI MERCI MERCI!!!!
je ne regrette vraiment pas de mettre inscrite sur ce forum! vous êtes géniaux!
ayé! ça fonctionne!
il fallait juste prendre F en colonne de référence!
Merci Hasco!
 

Discussions similaires

Réponses
28
Affichages
1 K

Statistiques des forums

Discussions
312 321
Messages
2 087 266
Membres
103 502
dernier inscrit
talebafia