Utilisatio du if en VBA sur Excel

Nicolas -  
 Nicolas -
Bonjour a tous
j'ai un problème concernant VBA et si vous vous y connaissait un peu pouriez vous m'aider svp? merci d'avance

2 réponses

  1. Ricky38 Messages postés 5776 Date d'inscription   Statut Contributeur Dernière intervention   1 463
     
    Salut,

    expose ton problème en détails et ce sera surement plus facile de t'aider ;)

    Bonne journée
    0
    1. Nicolas
       
      bonjour
      alors mon problème est compliqué donc je vais essayer de bien vous l'expliquer. je vous met mon code que j'ai déja fait :

      'si compte commençant par 613... alors
      If InStr(1, CStr(Range("C7").Value), "613") <> 0 Then
      i = 1
      While Not IsEmpty(Cells(i, 1))
      i = i + 1
      Wend
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 1).Value = Range("C7").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 2).Value = Range("H10").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 3).Value = Range("B4").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 4).Value = Range("H5").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 5).Value = Range("H6").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 6).Value = Range("B5").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 7).Value = Range("C10").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 8).Value = Range("D62").Value
      end If
      If InStr(1, CStr(Range("D7").Value), "613") <> 0 Then
      i = Range("K7").Value
      While Not IsEmpty(Cells(i, 1))
      i = i + 1
      Wend
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 1).Value = Range("D7").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 2).Value = Range("H10").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 3).Value = Range("B4").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 4).Value = Range("H5").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 5).Value = Range("H6").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 6).Value = Range("B5").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 7).Value = Range("C10").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 8).Value = Range("D63").Value
      End If
      If InStr(1, CStr(Range("E7").Value), "613") <> 0 Then
      i = Range("K7").Value
      While Not IsEmpty(Cells(i, 1))
      i = i + 1
      Wend
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 1).Value = Range("E7").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 2).Value = Range("H10").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 3).Value = Range("B4").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 4).Value = Range("H5").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 5).Value = Range("H6").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 6).Value = Range("B5").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 7).Value = Range("C10").Value
      Workbooks("VBA.").Sheets("Tab récup données").Cells(i, 8).Value = Range("D64").Value
      End If



      donc je vous explique ce que je veux faire. j'ai 3 cellules "C7", "D7" et "E7". je voudrais que si la cellule C7 comporte un numero commençant par 613 alors mon code s'aplique mais si les autre cellules ("D7" et "E7") commence également par 613 alors un code s'aplique mais si eventuellement deux cellules commence par 613 alors que cela soit pris en compte. j'espère que vous avez compris. merci d'avance
      0
    2. Nicolas
       
      bonjour
      je sais pas si vous avez vu un peu le code que j'ai fait. si oui pouvez vous me dir si vous avez une idée? merci d'avance
      0
    3. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      j'ai 3 cellules "C7", "D7" et "E7". je voudrais que si la cellule C7 comporte un numero commençant par 613 alors mon code s'aplique mais si les autre cellules ("D7" et "E7") commence également par 613 alors un code s'aplique mais si eventuellement deux cellules commence par 613 alors que cela soit pris en compte. j'espère que vous avez compris.
      non
      En gros, il doit s'appliquer que si C7 commence par 613 ou bien si les 3 cellules commencent par 613 ?
      En plus dans ton code tu mets <> 613 c'est à dire le contraire... Que veux-tu que l'on comprenne ?
      0
    4. Nicolas
       
      nn pas tous a fait. je peux avoir C7 et D7 qui commence par 613 et il faut donc que c'est deux valeure apparaisse dans mon tableau.
      0
    5. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Bon, ben tant que tu ne t'expliqueras pas mieux je crains que tu ne restes seul un moment...
      0
  2. Polux31 Messages postés 7219 Statut Membre 1 204
     
    Bonjour,

    Tu ne t'appelles plus Marie ... Ôo ...

    :o|
    -1
    1. Nicolas
       
      Marie c'est la personne qui s'en occuper avant pourquoi? vous l'a connaissai?
      0
    2. Nicolas
       
      ca marche merci bien
      0
    3. Nicolas
       
      c'est très gentil de mavoir donner un lien pour voir se qui aparament vous a demander beaucoup de patience ( je l'aurai pas été autant enfin bref) mais franchement j'ai du mal a suivre la conversation
      0
    4. Polux31 Messages postés 7219 Statut Membre 1 204
       
      j'ai eu aussi beaucoup de mal à suivre ...
      0