Erreur 400

Bonjour,

Je sollicite votre aide car j'obtiens une erreur 400 lorsque je clique dans une cellule.

Il manque un paramètre que je n'arrive pas à trouver

Voici les codes utilisés :

Sub cre_menu()
    Dim liste As Range
    Set liste = Range("Statut")
    If liste.Column > 1 Then Exit Sub

    Dim i As Long, nbl As Long

    On Error Resume Next
    CommandBars("Menu_Gw").Delete
    On Error GoTo 0

    Set cb = Application.CommandBars.Add("Menu_Gw", msoBarPopup)
    nbl = liste.Count
    For i = 1 To nbl
        With cb.Controls.Add(msoControlButton, 1, , , True)
            .Caption = liste(i)
            .OnAction = "gw_lance(" & i & ")"
        End With
    Next i
    cb.ShowPopup
End Sub
Sub gw_lance(index As Long)
    ActiveCell = cb.Controls(index).Caption
End Sub
Sub RAZ()
With Sheets("Guide")
    .Range("B18,B23,B27,B29,B31,B33,E13:F31").SpecialCells(xlCellTypeConstants).ClearContents
End With
    MsgBox "Transfert exécuté avec succès !"

End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Range("E13:E31"), Target) Is Nothing Then
        Call cre_menu
    End If
End Sub

Bonjour,

Tu nous mettrais pas un petit bout de fichier dès fois...

Parce que là ton code il est juste un peu dur à déboguer ! Il faut tout analyser, le contenu du range "statut", de liste, Je serai curieux de voir ce liste .column...

A+

Bonjour,

Je peux t'envoyer le fichier en MP?

Tu peux...

Un minimum d'explications serait les bienvenus : Il n'y a aucune macro dans ton fichier.

Or les macros dépendent étroitement de leur contexte et du module hôte.

Refaire ton envoi avec les macros installées + une petite explication comment provoquer l'erreur (Quoi saisir et où)

A+

Je te remercie pour ta réponse!

En voulant réduire la taille du fichier (limite imposée pour les envois en MP), j'ai enregistré le fichier en XLS par erreur -

Désolé.

Comme il comporte des données personnelles, je vais faire le nécessaire pour l'anonymiser et obtenir une aide sympathique.

Merci

Je te me mon mail en MP tu pouras le mettre en pièce jointe comme ça pas de problème de taille...

Merci,

Je viens de te transmettre le fichier par mail.

Cdlt

Contre toute attente l'erreur ne venait pas de là ou je suspectais mais de la

Sub gw_lance(index As Long)
    ActiveCell = cb.Controls(index).Caption
End Sub

Comme tu n'as pas Option Explicit tu ne peux pas vérifier ton code pour traquer les variables non déclarées...

La correction : rajouter en haut du module :

Option Explicit
Dim cb
Sub cre_menu()
'La suite sans changement

A+

Super !

Merci beaucoup

Rechercher des sujets similaires à "erreur 400"