Cellule vide dans une macro

Résolu
Bonjour,


bonjour, j'ai un probleme de cellule vide dans une macro
je travaille avec exel sous windows vista
un tableau se rempli au fur et a mesure que je selectionne mes choix dans une suite de liste déroulante jusqu'a me donner un résultat.
jusque là tout va bien.
a la fin de ma recherche j'efface les donnees de ce tableau sans effacer mes formules.
et la je beugue car ma macro ne sait plus quoi faire de ma cellule vide et me donne erreur execution '13'. j'arrete le debogage et ma macro refonctionne correctement.
merci de m'aider a lever cette erreur'13'

7 réponses

  1. Contributeur
    Bonjour,

    L'erreur execution '13' provient du fait que tu utilises dans une instruction des objets incompatibles : par exemple tu veux transférer un texte dans une variable définie en integer.
    0
    1. Salut,

      tu peux mettre à notre disposition ton fichier sans notes confidentielles avec ce lien

      https://www.cjoint.com/

      en changeant ta variable et certainement avec un

      On Error Resume Next
      ou
      On Error GoTo errorHandler

      on doit pouvoir gérer cela, mais il faut voir
      0
      1. j'ai mis mon fichier dans le lien cjoint mais je ne sais pas si cela a marché donc une petite info supplémentaire sur ma macro :
        elle est essentiellement faite avec

        If Not Intersect(Target, Range("A3")) Is Nothing Then

        If Target = "ANXIETE1" Then
        [B3].Select

        If Target = "COUPS" Then
        [b4].Select

        a la fin les donnees s'effacent à partir de la cellule a3 et mon message d'erreur se colle au premier if target de ma macro. c'est en a3 que je fais mon premier choix
        0
        1. Re,

          tu n'as pas collé le lien, il faut cliquer sur le lien/Parcourir pour sélectionner ton fichier/clic sur créer le lien/puyis coller dans un post le lien généré

          avec le bout decode que tu as collé, tu peux déjà écrire If Not Intersect(Target, Range("A3")) Is Nothing Then

          If Target ="" Then Exit Sub
          If Target = "ANXIETE1" Then [B3].Select
          If Target = "COUPS" Then [b4].Select

          mais le mieux est de voir ton code dans sa totalité ou d'avoir ton fichier
          0
          1. http://cjoint.com/?0Bwk5Tm1Ny0

            j'espere que ca ma marcher. je suis novice sur le site
            0
            1. Re,

              pour la première partie tu peux écrire ce code

              Private Sub Worksheet_Change(ByVal Target As Range)
              On Error Resume Next
              If Not Intersect(Target, Range("A3")) Is Nothing Then
              If Target = "ANXIETE1" Then [B3].Select
              If Target = "COUPS" Then [b4].Select
              If Target = "DENTS" Then [b5].Select
              If Target = "DOULEURS MUSCULAIRES" Then [b6].Select
              If Target = "ETAT GRIPPAL" Then [b7].Select
              If Target = "MAL AU KEUR" Then [b8].Select
              If Target = "MAUX DE TETE" Then [b9].Select
              If Target = "OREILLE1" Then [b10].Select
              If Target = "VERTIGE1" Then [b11].Select
              If Target = "VENTRE" Then [b12].Select
              End If

              la seconde partie tu adapte comme la première partie ou tu utilises ElseIf

              If Not Intersect(Target, Range("B3")) Is Nothing Then
              If Target = "ANXIETE2" Then
              [C3].Select
              ElseIf Target = "COUP" Then
              [C4].Select
              ElseIf Target = "DESINFECTANT" Then [D4].Select
              End If
              End If

              tu peux également remplacer tes premières lignes
              If Not Intersect(Target, Range("A3")) Is Nothing Then
              If Not Intersect(Target, Range("B3")) Is Nothing Then
              etc ....

              par cette simple ligne en début de code

              If Not Intersect(Target, Union([A3], [B3], [B5:B12])) Is Nothing Then

              A toi de jouer

              A+
              Mike-31

              Une période d'échec est un moment rêvé pour semer les graines du savoir.
              0
              1. merci, j'ai pu finir mon taf
                heureusement qu'il y a des gens comme toi
                salut
                0