• Initiateur de la discussion Initiateur de la discussion francedemo
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

francedemo

XLDnaute Occasionnel
[Résolu] syntaxe de "Range"

bonjour à tous

j'ai besoin d'aide au sujet d'une macro qui fonctionne mais qui doit être améliorable.
aujourd'hui, j'utilise : le but est de sélectionner des cellules (qui contiennent une formule) par rapport à une cellule coloriée, puis de recopier la valeur de la formule sur elle même pour "bloquer" le résultat (je fais un "Call" d'une autre macro, "Valeur", que j'utilise couramment par ailleurs)

la question concerne la fonction "Range" que je n'arrive pas à écrire correctement, je voudrais simplement écrire : "Range(i, 2), (i, 28).Activate"
mais ça ne marche pas

code utilisé
Code:
Sub CopierCollerSelection()
Dim i As Integer
Dim DerLigne As Long

'Remise à zéro des couleurs
'Cells.Interior.ColorIndex = xlNone
    
' colorier selon secteurs
    For i = Range("A1000").End(xlUp).Row To 2 Step -1
        If Cells(i, 1) <> "" Then
           If Cells(i, 2).Interior.ColorIndex = 36 Then
'            Range(i, 2), (i, 28).Activate
           Cells(i, 2).Select
           Call Valeur
          Cells(i, 21).Select
            Call Valeur
           Cells(i, 25).Select
            Call Valeur
           Cells(i, 26).Select
            Call Valeur
           Cells(i, 27).Select
            Call Valeur
           Cells(i, 28).Select
            Call Valeur
           End If
        End If
        
    Next i
    
    DerLigne = Range("a1000").End(xlUp).Row + 1
    Range("A" & DerLigne).Activate


End Sub

merci d'avance
 
Dernière édition:
Re : syntaxe de "Range"

bonjour francedemo

A tester:
Code:
Sub CopierCollerSelection()
Dim i As Integer
Dim DerLigne As Long

'Remise à zéro des couleurs
'Cells.Interior.ColorIndex = xlNone
    
' colorier selon secteurs
    For i = Range("A1000").End(xlUp).Row To 2 Step -1
        If Cells(i, 1) <> "" Then
           If Cells(i, 2).Interior.ColorIndex = 36 Then
           Range(Cells(i, 2), Cells(i, 28)).Select
               Call Valeur
           End If
        End If        
    Next i
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
909
Réponses
15
Affichages
779
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
1
Affichages
323
Retour