Simplification de code
B
bonjour, j'ai fais ce code qui fonctionne mais je n'arrive pas à le simplifier
If Range("D2").Value = 1 Then
If Range("D3").Value = 1 Then
Sheets("Base de donnée").Select
Range("E3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 2 Then
Sheets("Base de donnée").Select
Range("F3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 3 Then
Sheets("Base de donnée").Select
Range("G3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 4 Then
Sheets("Base de donnée").Select
Range("H3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 5 Then
Sheets("Base de donnée").Select
Range("I3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 6 Then
Sheets("Base de donnée").Select
Range("J3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 7 Then
Sheets("Base de donnée").Select
Range("K3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 8 Then
Sheets("Base de donnée").Select
Range("L3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 9 Then
Sheets("Base de donnée").Select
Range("M3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 10 Then
Sheets("Base de donnée").Select
Range("N3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 11 Then
Sheets("Base de donnée").Select
Range("O3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 12 Then
Sheets("Base de donnée").Select
Range("P3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 13 Then
Sheets("Base de donnée").Select
Range("Q3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 14 Then
Sheets("Base de donnée").Select
Range("R3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 15 Then
Sheets("Base de donnée").Select
Range("S3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 16 Then
Sheets("Base de donnée").Select
Range("T3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 17 Then
Sheets("Base de donnée").Select
Range("U3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 18 Then
Sheets("Base de donnée").Select
Range("V3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 19 Then
Sheets("Base de donnée").Select
Range("W3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 20 Then
Sheets("Base de donnée").Select
Range("X3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 21 Then
Sheets("Base de donnée").Select
Range("Y3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 22 Then
Sheets("Base de donnée").Select
Range("Z3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 23 Then
Sheets("Base de donnée").Select
Range("AA3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 24 Then
Sheets("Base de donnée").Select
Range("AB3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 25 Then
Sheets("Base de donnée").Select
Range("AC3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 26 Then
Sheets("Base de donnée").Select
Range("AD3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 27 Then
Sheets("Base de donnée").Select
Range("AE3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 28 Then
Sheets("Base de donnée").Select
Range("AF3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 29 Then
Sheets("Base de donnée").Select
Range("AG3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 30 Then
Sheets("Base de donnée").Select
Range("AH3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 31 Then
Sheets("Base de donnée").Select
Range("AI3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 32 Then
Sheets("Base de donnée").Select
Range("AJ3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 33 Then
Sheets("Base de donnée").Select
Range("AK3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 34 Then
Sheets("Base de donnée").Select
Range("AL3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 35 Then
Sheets("Base de donnée").Select
Range("AM3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 36 Then
Sheets("Base de donnée").Select
Range("AN3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 37 Then
Sheets("Base de donnée").Select
Range("AO3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 38 Then
Sheets("Base de donnée").Select
Range("AP3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 39 Then
Sheets("Base de donnée").Select
Range("AQ3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 40 Then
Sheets("Base de donnée").Select
Range("AR3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 41 Then
Sheets("Base de donnée").Select
Range("AS3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 42 Then
Sheets("Base de donnée").Select
Range("AT3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 43 Then
Sheets("Base de donnée").Select
Range("AU3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 44 Then
Sheets("Base de donnée").Select
Range("AV3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 45 Then
Sheets("Base de donnée").Select
Range("AW3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 46 Then
Sheets("Base de donnée").Select
Range("AX3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 47 Then
Sheets("Base de donnée").Select
Range("AY3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 48 Then
Sheets("Base de donnée").Select
Range("AZ3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 49 Then
Sheets("Base de donnée").Select
Range("BA3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 50 Then
Sheets("Base de donnée").Select
Range("BB3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 51 Then
Sheets("Base de donnée").Select
Range("BC3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 52 Then
Sheets("Base de donnée").Select
Range("BD3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 53 Then
Sheets("Base de donnée").Select
Range("BE3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 54 Then
Sheets("Base de donnée").Select
Range("BF3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 55 Then
Sheets("Base de donnée").Select
Range("BG3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 56 Then
Sheets("Base de donnée").Select
Range("BH3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 57 Then
Sheets("Base de donnée").Select
Range("BI3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 58 Then
Sheets("Base de donnée").Select
Range("BJ3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 59 Then
Sheets("Base de donnée").Select
Range("BK3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 60 Then
Sheets("Base de donnée").Select
Range("BL3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 61 Then
Sheets("Base de donnée").Select
Range("BM3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 62 Then
Sheets("Base de donnée").Select
Range("BN3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ElseIf Range("D3").Value = 63 Then
Sheets("Base de donnée").Select
Range("BO3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End IfMerci
Bonjour,
A adapter
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim i As Integer
For i = 1 To 63
If i = Range("D3").Value Then
Range("A1").Value = Cells(3, 4 + i).Value
End If
Next i
End Subbonjour,
Moi je l'ai compris comme ça :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i%
With Sheets("Base de donnée")
If Range("D2").Value = 1 Then
For i = 1 To 63
If i = Range("D3").Value Then
.Cells(3, 4 + i).Value = .Cells(3, 4 + i)
End If
Next i
End If
End With
End SubLà encore c'est à adapter et ça ne fonctionne que si D3 est modifié par l'utilisateur. Si D3 est le résultat d'une formule ça ne marche pas. dans ce cas il faut utiliser Calculate...
C'est l'inconvénient de ne donner qu'une partie du code...
A+
B
Je vous joins le fichier , la macro est dans la feuille "TAD" bouton "Valider" (Macro 6). Merci
Bonsoir,
Pour le coup ça devient complètement incompréhensible.
Je passe la main.
A+
B
Bonjour galopin01, qu'est ce qui est incomprehensible?