lioneldu47
XLDnaute Occasionnel
Bonjour le forum,
J'ai créé un code qui fonctionne pour ce que je veux faire mais il est très long. J'aimerais savoir comment faire pour le racourcir avec une boucle par exemple. Voici le code :
Private Sub CheckBox1_Click()
Dim myVar1 As Long
Dim myVar2 As Long
Dim myVar3 As Long
Dim myVar4 As Long
Dim myVar5 As Long
Dim myVar6 As Long
If Txtcode <> "" Then Txtcode = "" Else Txtcode = "Emergence " & 1
On Error Resume Next
myVar1 = Application.WorksheetFunction _
.Match(Txtcode, Worksheets("NPG").Range("A1:A65000"), 0)
On Error GoTo 0
If myVar1 <> 0 Then Txtcode = "Emergence " & 2 Else Exit Sub
On Error Resume Next
myVar2 = Application.WorksheetFunction _
.Match(Txtcode, Worksheets("NPG").Range("A1:A65000"), 0)
On Error GoTo 0
If myVar2 <> 0 Then Txtcode = "Emergence " & 3 Else Exit Sub
On Error Resume Next
myVar3 = Application.WorksheetFunction _
.Match(Txtcode, Worksheets("NPG").Range("A1:A65000"), 0)
On Error GoTo 0
If myVar3 <> 0 Then Txtcode = "Emergence " & 4 Else Exit Sub
On Error Resume Next
myVar4 = Application.WorksheetFunction _
.Match(Txtcode, Worksheets("NPG").Range("A1:A65000"), 0)
On Error GoTo 0
If myVar4 <> 0 Then Txtcode = "Emergence " & 5 Else Exit Sub
On Error Resume Next
myVar5 = Application.WorksheetFunction _
.Match(Txtcode, Worksheets("NPG").Range("A1:A65000"), 0)
On Error GoTo 0
If myVar5 <> 0 Then Txtcode = "Emergence " & 6 Else Exit Sub
On Error Resume Next
myVar6 = Application.WorksheetFunction _
.Match(Txtcode, Worksheets("NPG").Range("A1:A65000"), 0)
On Error GoTo 0
If myVar6 <> 0 Then Txtcode = "Emergence " & 6 Else Exit Sub
End Sub
J'aimerais aller jusqu'à Txtcode = "Emergence " & 100 alors que pour le moment je ne suis qu'à Txtcode = "Emergence " & 6. Imaginez la longueur du code final.
Merci de m'aider à diminuer et à optimiser ce code. Merci pour votre aide.
Bonne journée.
J'ai créé un code qui fonctionne pour ce que je veux faire mais il est très long. J'aimerais savoir comment faire pour le racourcir avec une boucle par exemple. Voici le code :
Private Sub CheckBox1_Click()
Dim myVar1 As Long
Dim myVar2 As Long
Dim myVar3 As Long
Dim myVar4 As Long
Dim myVar5 As Long
Dim myVar6 As Long
If Txtcode <> "" Then Txtcode = "" Else Txtcode = "Emergence " & 1
On Error Resume Next
myVar1 = Application.WorksheetFunction _
.Match(Txtcode, Worksheets("NPG").Range("A1:A65000"), 0)
On Error GoTo 0
If myVar1 <> 0 Then Txtcode = "Emergence " & 2 Else Exit Sub
On Error Resume Next
myVar2 = Application.WorksheetFunction _
.Match(Txtcode, Worksheets("NPG").Range("A1:A65000"), 0)
On Error GoTo 0
If myVar2 <> 0 Then Txtcode = "Emergence " & 3 Else Exit Sub
On Error Resume Next
myVar3 = Application.WorksheetFunction _
.Match(Txtcode, Worksheets("NPG").Range("A1:A65000"), 0)
On Error GoTo 0
If myVar3 <> 0 Then Txtcode = "Emergence " & 4 Else Exit Sub
On Error Resume Next
myVar4 = Application.WorksheetFunction _
.Match(Txtcode, Worksheets("NPG").Range("A1:A65000"), 0)
On Error GoTo 0
If myVar4 <> 0 Then Txtcode = "Emergence " & 5 Else Exit Sub
On Error Resume Next
myVar5 = Application.WorksheetFunction _
.Match(Txtcode, Worksheets("NPG").Range("A1:A65000"), 0)
On Error GoTo 0
If myVar5 <> 0 Then Txtcode = "Emergence " & 6 Else Exit Sub
On Error Resume Next
myVar6 = Application.WorksheetFunction _
.Match(Txtcode, Worksheets("NPG").Range("A1:A65000"), 0)
On Error GoTo 0
If myVar6 <> 0 Then Txtcode = "Emergence " & 6 Else Exit Sub
End Sub
J'aimerais aller jusqu'à Txtcode = "Emergence " & 100 alors que pour le moment je ne suis qu'à Txtcode = "Emergence " & 6. Imaginez la longueur du code final.
Merci de m'aider à diminuer et à optimiser ce code. Merci pour votre aide.
Bonne journée.