Additionner click commandbutton vers textbox

Re,

Viens de regarder

J'ai un soucis avec le bouton nouveau compte et le bouton table

Quand je clic dessus, sa me marque erreur de compilation, projet ou bibliothéque introuvable

Est-ce que de ton coté, toi aussi

Merci

Bonjour,

Il n'y a que le bouton Table qu'il faut utiliser dans cet exemple ...

Double-clique sur une table pâle (orangé) > le formulaire se ferme et la table est créée > clique à nouveau sur le bouton table > la table que tu as double-cliquée est devenue foncé (bleuté) ...

C'est tout > c'est ce processus que je voulais te montrer > rien d'autre ...

ric

Bonjour Ric,

Quand j'ouvre le fichier, j'appuye sur le bouton table

La directement, j'ai un avertissement erreur de compilation: projet ou bibliothèque introuvable

Private Sub Tables_Click()
'Si l'onglet de la table existe
Dim Sh As Variant
Dim feuilleExiste As Boolean
Dim X As Byte
Dim NoImg

If Range("LesTables").Rows.Count > 0 Then
For X = 1 To Range("LesTables").Rows.Count
If Left(Range("LesTables[Tables]").Rows(X), 5) = "Table" Then
NoImg = Right(Range("LesTables[Tables]").Rows(X), Len(Range("LesTables[Tables]").Rows(X).Value) - 6)

' le Right est surligné en bleu

Shéma_tables.Controls("Image" & NoImg & "b").Visible = True
Else
Shéma_tables.Controls("Image" & NoImg & "b").Visible = False
End If
Next X
Else
For X = 1 To 8 ' nombre de tables à ajuster ou dynamiser
Shéma_tables.Controls("Image" & X & "b").Visible = False
Next X
End If
Shéma_tables.Show
End Sub

Bonjour,

Voici une autre version qui devrait fonctionner ...

ric

16separationv7.xlsm (121.29 Ko)

Bonjour Ric,

Je vois

J'aime bien cette idée, plus facile pour l'encodage

Vais regarder plus attentivement et pousser cette idée

Merci

ps: si tu as une idée en plus, je suis à toute proposition

Bonjour Ric,

Je m'aperçois dans le code pour les tables, si il n'y a rien dans l'onglet liste des tables, et que je clic sur le bouton Tables, j'ai un code d'erreur qui apparait.

Private Sub Tables_Click()
'Si l'onglet de la table existe
Dim Sh As Variant
Dim feuilleExiste As Boolean
Dim X As Byte
Dim NoImg

If Range("LesTables").Rows.Count > 0 Then
For X = 1 To Range("LesTables").Rows.Count
If Left(Range("LesTables[Tables]").Rows(X), 5) = "Table" Then
NoImg = Right(Range("LesTables[Tables]").Rows(X), Len(Range("LesTables[Tables]").Rows(X).Value) - 6)
Shéma_tables.Controls("Image" & NoImg & "b").Visible = True
Else

Shéma_tables.Controls("Image" & NoImg & "b").Visible = False (toute la ligne et en surbrillance)

End If
Next X
Else
For X = 1 To 8 ' nombre de tables à ajuster ou dynamiser
Shéma_tables.Controls("Image" & X & "b").Visible = False
Next X
End If
Shéma_tables.Show
End Sub

Si je supprime cette ligne, ça l'aire de marcher (voila le code après suppression surlignage)

Private Sub Tables_Click()
'Si l'onglet de la table existe
Dim Sh As Variant
Dim feuilleExiste As Boolean
Dim X As Byte
Dim NoImg

If Range("LesTables").Rows.Count > 0 Then
For X = 1 To Range("LesTables").Rows.Count
If Left(Range("LesTables[Tables]").Rows(X), 5) = "Table" Then
NoImg = Right(Range("LesTables[Tables]").Rows(X), Len(Range("LesTables[Tables]").Rows(X).Value) - 6)
Shéma_tables.Controls("Image" & NoImg & "b").Visible = True

End If
Next X
Else
For X = 1 To 8 ' nombre de tables à ajuster ou dynamiser
Shéma_tables.Controls("Image" & X & "b").Visible = False
Next X
End If
Shéma_tables.Show
End Sub

J'ai pas encore tous compris à 100% les codes, voulais juste savoir si je fais une erreur de le supprimer même si sa ma l'aire de fonctionner

En te remerciant

Bonjour,

Tu serais bien aimable d'utiliser le bouton Code  </>  pour mettre le code sous balise afin qu'il soit lisible > merci ...

Pour corriger cette erreur > je suggère d'ajouter un test sur "NoImg" au début de la ligne ...

Else
   If NoImg > 0 Then Shéma_tables.Controls("Image" & NoImg & "b").Visible = False
End If

ric

Bonjour Ric,

Excuse moi pour le code (je savais pas)

Voila j'ai changé et ça fonctionne

Private Sub Tables_Click()
    'Si l'onglet de la table existe
Dim Sh As Variant
Dim feuilleExiste As Boolean
Dim X As Byte
Dim NoImg

        If Range("LesTables").Rows.Count > 0 Then
            For X = 1 To Range("LesTables").Rows.Count
                If Left(Range("LesTables[Tables]").Rows(X), 5) = "Table" Then
                    NoImg = Right(Range("LesTables[Tables]").Rows(X), Len(Range("LesTables[Tables]").Rows(X).Value) - 6)
                    Shéma_tables.Controls("Image" & NoImg & "b").Visible = True
                Else
                    If NoImg > 0 Then Shéma_tables.Controls("Image" & NoImg & "b").Visible = False
                End If
            Next X
        Else
            For X = 1 To 8    ' nombre de tables à ajuster ou dynamiser
                Shéma_tables.Controls("Image" & X & "b").Visible = False
            Next X
        End If
Shéma_tables.Show
End Sub

Encore un grand merci et encore désolé

Je te souhaite une agréable journée

ric

Re,

Je faisais des test sur le bouton cash, je vois qu'il y a une erreur quand c'est avec les tables.

Cela est normal car le nom de la table ne s'affiche plus dans Liste Clients et Liste Clients Actif (ça c'est bien)

Je me dis qu'il faudrait mettre une condition en plus dans le bouton cash (est-ce que mon raisonnement est bon?)

'Supprime la feuille
                Valeur = Me.TextBox8.Value

                Application.DisplayAlerts = False
                Worksheets(Me.TextBox8.Value).Delete

                With Worksheets("Liste Clients")
                    Lig = .ListObjects("Compte").DataBodyRange.Find(Valeur, LookIn:=xlValues).Row       
                    .Rows(Lig).Delete
                End With
                With Worksheets("Liste Clients Actif")
                    Lig = .ListObjects("Clients_actif").DataBodyRange.Find(Valeur, LookIn:=xlValues).Row
                    .Rows(Lig).Delete
                End With

Du style:

if textbox8 contient le mot table alors
    Worksheets(Me.TextBox8.Value).Delete
Else
    Valeur = Me.TextBox8.Value

    Application.DisplayAlerts = False
    Worksheets(Me.TextBox8.Value).Delete

    With Worksheets("Liste Clients")
        Lig = .ListObjects("Compte").DataBodyRange.Find(Valeur, LookIn:=xlValues).Row
        .Rows(Lig).Delete
    End With
    With Worksheets("Liste Clients Actif")
        Lig = .ListObjects("Clients_actif").DataBodyRange.Find(Valeur, LookIn:=xlValues).Row
        .Rows(Lig).Delete
    End With
    

Quand pense-tu?

Merci

Bonjour,

Mais là > sur quelle version du fichier est-ce que tu travailles ?

ric

Re,

Je te communique le fichier

6separationv8.xlsm (120.95 Ko)

Merci

Bonjour Ric,

A priori, ce code devrais marcher après 2 3 test

'Supprime la feuille
                If InStr(1, TextBox8.Text, "Table", vbTextCompare) > 0 Then
                    Application.DisplayAlerts = False
                    Worksheets(Me.TextBox8.Value).Delete

                    With Worksheets("Liste Tables")
                        Lig = .ListObjects("LesTables").DataBodyRange.Find(Valeur, LookIn:=xlValues).Row
                        .Rows(Lig).Delete
                    End With
                Else
                    Valeur = Me.TextBox8.Value

                    Application.DisplayAlerts = False
                    Worksheets(Me.TextBox8.Value).Delete

                    With Worksheets("Liste Clients")
                        Lig = .ListObjects("Compte").DataBodyRange.Find(Valeur, LookIn:=xlValues).Row
                        .Rows(Lig).Delete
                    End With
                    With Worksheets("Liste Clients Actif")
                        Lig = .ListObjects("Clients_actif").DataBodyRange.Find(Valeur, LookIn:=xlValues).Row
                        .Rows(Lig).Delete
                    End With
                End If

Re,

Maintenant si c'est bien cela

Je crois bien que je vais devoir faire du changement dans tous le code

Bonjour Ric,

je crois que le code est bon mais j'ai des soucis avec l'encodage onglet ticket et Z

J'espère ne pas trop me tromper

Je te communique le fichier

3separationv9.xlsm (126.89 Ko)

Bonjour,

Durant que je regarde "separationv9.xlsm" > je te laisser regarder "separationv8b.xlsm" > ci-joint ...

Sur "Shéma_tables" > j'ai copié le numéro 2 qui a un fond transparent pour en faire les numéros 3, 4, 5, 6, 7 et 8 ...

Il est possible que l'on ait travaillé sur les mêmes sujets ...

Dans ma version 8b > je sélectionne une table qui a des items dus > je clique sur "Cash" et les traitements semblent bien fonctionner ...

ric

7separationv8b.xlsm (114.87 Ko)

Bonjour,

Je vois que tu as été confronté au même problème que moi > quand une table est foncée > l'on ne peut plus cliquer dessus > car l'image pâle se nomme "Image X" et l'image foncée se nomme "Image Xb" ...

C'est corrigé sur la version 8b ...

ric

Bonjour Ric,

Je regarde directement

Merci

Bonjour Ric,

je m'aperçois que quand je clic sur cash dans l'onglet Ticket et Z, il ne marque que le listbox1 et ne marque pas le listbox2 si il y a

Est-ce que de ton coté, c'est de même

Merci

Bonjour,

Je ne savais pas que le traitement devait faire cela > je n'ai donc pas regarder la chose ...

Il est vrai que l'on sauverait plusieurs clics ...

Je jette un oeil de ce côté là ...

ric

Rechercher des sujets similaires à "additionner click commandbutton textbox"