EXCEL | VBA | Programme

ROMAIN78650 Messages postés 25 Statut Membre -  
ccm81 Messages postés 11033 Statut Membre -
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
A voir également:

3 réponses

via55 Messages postés 14730 Date d'inscription   Statut Membre Dernière intervention   2 750
 
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
Gyrus Messages postés 3360 Statut Membre 526
 
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
ccm81 Messages postés 11033 Statut Membre 2 433
 
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