Erreur définie par l'application ou l'objet

  • Initiateur de la discussion Initiateur de la discussion mfb
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

mfb

XLDnaute Occasionnel
Bonjour,
La passage de l' instruction d'un bouton simple en commadButton génère le Bug énoncé en sujet.
L'instruction à pour objet d'activer des cellules de la feuille 2 en fonction du n° de ligne saisi en feuille 1.
En pj un petit bout de fichier.
Merci par avance pour votre aide.
A+
Daniel
 

Pièces jointes

Re : Erreur définie par l'application ou l'objet

Bonjour à tous

mfb
Personnellement, si j'étais moi, j'essaierai de me convaincre d'utiliser plutôt le code VBA ci-dessous 😉
Code:
Private Sub CommandButton1_Click()
Dim x&
x = [D7]
If x = 0 Or Len(x) = 0 Then
MsgBox "Aucune valeur dans cellule activée", vbCritical, "ERREUR"
Exit Sub
Else
Application.Goto Sheets("Feuil2").Cells(x, "B").Offset(4).Resize(, 28)
End If
End Sub

Quand au précédent bug, si ActiveCell est vide quand on clique, il survient, non ?
 
Dernière édition:
Re : Erreur définie par l'application ou l'objet

Bonsoir,
C'est Ok plus d' erreur. Je vais utiliser ce code.
Après la pratique la théorie :
Le symbole "&" peut il être utilisé dans la déclaration de n'importe quel type de variable ou simplement Integer ?
Merci d'avance.
A+
Daniel
 
Re : Erreur définie par l'application ou l'objet

Bonsoir à tous.


D'accord avec vous : x As Long est préférable.

D'autre part, remplacer​
Code:
Rows.Cells("B" & x + 4 & ":AC" & x + 4).Select
par​
Code:
Sheets("Feuil2").Range("B" & x + 4 & ":AC" & x + 4).Select

Une version alternative :​
Code:
Private Sub CommandButton1_Click()

Dim x As Long

  With [D7] 'ou With ActiveCell ? À vous de voir...

    If IsEmpty(.Value) Then
      MsgBox "Aucune valeur dans la cellule " & .Address(0, 0) & " !"
    Else
      On Error Resume Next
      x = .Value

      If Err.Number Or x < -3 Then
        MsgBox "La valeur de la cellule " & .Address(0, 0) & " est incorrecte !" & _
          vbLf & "(Ce doit être un nombre plus grand que -3.)"
      Else
        On Error GoTo 0
        With Sheets("Feuil2")
          .Activate
          .[B4:AC4].Offset(x).Select
        End With
      End If

    End If

  End With

End Sub


Bonne soirée.


ℝOGER2327
#7653


Samedi 28 Haha 142 (Fuite d’Ablou - fête Suprême Quarte)
12 Brumaire An CCXXIII, 7,0916h - macre
2014-W44-7T17:01:11Z
 
Dernière édition:
Re : Erreur définie par l'application ou l'objet

Bonsoir,
Abondance de bien ne nuit pas.
Avec tous vos conseils et tuyaux je suis moins bête qu' hier mais je crois que je peux revenir demain.
Alors un grand MERCI Roger, Staple et camarchepas.
Bonne soirée à tous.
A+
Daniel
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour