Bouton Option Excel

noobduvb -  
gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour !!!!!!!!!!!!!!!!!!!!!!,

voili voilou !
jai crée 3 boutons options à l'aide du formulaire

chacun appéllé : année 1 , année 2 , année 3

jvoudrais faire une macro : qui puisse selectionné dans 2 autres feuilles un range selon ligne colonne selon ma case cocher je selectionnerais le même nombres de lignes mais il y aurra plus de colonne!
j'ai tenté un code, j"ai honte
mais si ca peus vous aider
Sub Option1_Click()
    Dim ligne As Integer
    Dim col As Integer
    
    ligne = Cells(1, 3).Value
    col = Cells(1, 4).Value
    
    If Année 1.Value = True Then
        Sheets("Feuil2").Select
        Range("C6 &  ligne, 4 + col ").Select
        Sheets("Feuil3").Select
        Range("C6 & ligne, 4").Select
    ElseIf
        Sheets("Feuil2").Select
        Range("C6 & ligne , 4 + col + 52 ").Select
        Sheets("Feuil3").Select
        Range("C6 & ligne, 4 + col + 52 ").Select
    ElseIf
        Sheets("Feuil2").Select
        Range("C6 & ligne , 4+ col +167").Select
        Sheets("Feuile3").Select
        Range("C6 & ligne , 4+ col+ 167").Select
    End If
End Sub


mes ranges sont moches lol

merci de bien vouloir m'aider

3 réponses

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Bon il y a certainement pas mal de choses à revoir
    Sub Option1_Click()
        Dim ligne As Integer   ' attention limité à 32 767
        Dim col As Integer
        
        ligne = Cells(1, 3).Value
        col = Cells(1, 4).Value
        
        If Année 1.Value = True Then 
    ' tu testes "Année 1" qui est le "caption" pas le nom qui doit  être "Option1"
    ' tu ne peux pas avoir d'espace dans le nom du bouton d'option
            Sheets("Feuil2").Select
            Range("C6 &  ligne, 4 + col ").Select
    'utilises plutôt : cells(6,3).resize(ligne ,colonne).Select
    'cells(6,3) = range("C6") -> ligne 6 colonne 3
    ' si j'ai compris tu pars ainsi de C6 et tu sélectionnes le nombre de lignes et de colonnes de tes paramètres
    ' idem pour toutes les autres adresses 
           Sheets("Feuil3").Select
            Range("C6 & ligne, 4").Select
        ElseIf
            Sheets("Feuil2").Select
            Range("C6 & ligne , 4 + col + 52 ").Select
            Sheets("Feuil3").Select
            Range("C6 & ligne, 4 + col + 52 ").Select
        ElseIf
            Sheets("Feuil2").Select
            Range("C6 & ligne , 4+ col +167").Select
            Sheets("Feuile3").Select
    ' attention aux noms c'est soit "Feuil3" soit "Feuile3" mais pas tantôt l'un tantôt l'autre
            Range("C6 & ligne , 4+ col+ 167").Select
        End If
    End Sub

    0