EXCEL | VBA | Programme

Bonjour,

J'ai un soucis avec VBA.
En fait j'ai un select case avec 100 Cas.

Le problème c'est que les conditions de mon if sont nombreuses et donc très long (pas en terme de temps mais en terme d'espace).
Du coup excel me renvoie un message :



Est-ce qu'il y a une solution à ce problème, une extension ou autre... :-)

En vous remerciant par avance

cordialement

Romain

3 réponses

  1. Une petite fonction OK qui renvoie VRAI si on trouve au moins une occurrence du mot TRUC dans une plage donnée

    Const NF = "Feuil1"
    Const test = "TRUC"

    Public Function OK(co As String, lidep As Long, nbli As Long) As Boolean
    Dim plage As Range, nb As Long
    Set plage = Sheets(NF).Range(co & lidep & ":" & co & lidep + nbli - 1)
    nb = Application.WorksheetFunction.CountIf(plage, test)
    If nb > 0 Then OK = True Else OK = False
    End Function

    Public Sub TestOK()
    MsgBox OK("A", 2, 5)
    End Sub


    Cordialement
    0
    1. Bonjour,

      Tu dois pouvoir placer une boucle
          For i = 0 To 99
      If Range("F" & E5_LVun + i) = "CREATION" Then
      '....
      End If
      Next i


      A+
      0
      1. Bonsoir

        Fait d'abord une boucle sur tes conditions pour déterminer si CREATION existe dans tes lignes

        OK=0
        For n= 1 to 29
        if Range("F" & E5_LVun +n)="CREATION" then OK=1
        Next
        If OK = 1 then


        Cdlmnt

        0