IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Simplification de code


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    123
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 123
    Par défaut Simplification de code
    Bonsoir à tous.

    Voilà j'utilise le code suivant. Est-ce possible de le simplifier? Et surtout comment svp? J'apprends et je découvre VBA seul. J'ai donc écrit ce code mais j'aimerai savoir comment le simplifier.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    Application.DisplayAlerts = False  'Fige l'écran pendant le travail
     
        Application.Calculation = xlCalculationManual
     
        ActiveSheet.Unprotect "xxxxx"
     
        Sheets("xxxxxxx").Select
     
        Range("C4:C361").ClearContents
     
        Range("B7,D4:O4,D6,F6,H6,J6,L6,N6").ClearContents
        Range("B13,D10:O10,D12,F12,H12,J12,L12,N12").ClearContents
        Range("B19,D16:O16,D18,F18,H18,J18,L18,N18").ClearContents
        Range("B25,D22:O22,D24,F24,H24,J24,L24,N24").ClearContents
        Range("B31,D28:O28,D30,F30,H30,J30,L30,N30").ClearContents
        Range("B37,D34:O34,D36,F36,H36,J36,L36,N36").ClearContents
        Range("B43,D40:O40,D42,F42,H42,J42,L42,N42").ClearContents
        Range("B49,D46:O46,D48,F48,H48,J48,L48,N48").ClearContents
        Range("B55,D52:O52,D54,F54,H54,J54,L54,N54").ClearContents
        Range("B61,D58:O58,D60,F60,H60,J60,L60,N60").ClearContents
        Range("B67,D64:O64,D66,F66,H66,J66,L66,N66").ClearContents
        Range("B73,D70:O70,D72,F72,H72,J72,L72,N72").ClearContents
        Range("B79,D76:O76,D78,F78,H78,J78,L78,N78").ClearContents
        Range("B85,D82:O82,D84,F84,H84,J84,L84,N84").ClearContents
        Range("B91,D88:O88,D90,F90,H90,J90,L90,N90").ClearContents
        Range("B97,D94:O94,D96,F96,H96,J96,L96,N96").ClearContents
        Range("B103,D100:O100,D102,F102,H102,J102,L102,N102").ClearContents
        Range("B109,D106:O106,D108,F108,H108,J108,L108,N108").ClearContents
        Range("B115,D112:O112,D114,F114,H114,J114,L114,N114").ClearContents
        Range("B121,D118:O118,D120,F120,H120,J120,L120,N120").ClearContents
        Range("B127,D124:O124,D126,F126,H126,J126,L126,N126").ClearContents
        Range("B133,D130:O130,D132,F132,H132,J132,L132,N132").ClearContents
        Range("B139,D136:O136,D138,F138,H138,J138,L138,N138").ClearContents
        Range("B145,D142:O142,D144,F144,H144,J144,L144,N144").ClearContents
        Range("B151,D148:O148,D150,F150,H150,J150,L150,N150").ClearContents
        Range("B157,D154:O154,D156,F156,H156,J156,L156,N156").ClearContents
        Range("B163,D160:O160,D162,F162,H162,J162,L162,N162").ClearContents
        Range("B169,D166:O166,D168,F168,H168,J168,L168,N168").ClearContents
        Range("B175,D172:O172,D174,F174,H174,J174,L174,N174").ClearContents
        Range("B181,D178:O178,D180,F180,H180,J180,L180,N180").ClearContents
        Range("B187,D184:O184,D186,F186,H186,J186,L186,N186").ClearContents
        Range("B193,D190:O190,D192,F192,H192,J192,L192,N192").ClearContents
        Range("B199,D196:O196,D198,F198,H198,J198,L198,N198").ClearContents
        Range("B205,D202:O202,D204,F204,H204,J204,L204,N204").ClearContents
        Range("B211,D208:O208,D210,F210,H210,J210,L210,N210").ClearContents
        Range("B217,D214:O214,D216,F216,H216,J216,L216,N216").ClearContents
        Range("B223,D220:O220,D222,F222,H222,J222,L222,N222").ClearContents
        Range("B229,D226:O226,D228,F228,H228,J228,L228,N228").ClearContents
        Range("B235,D232:O232,D234,F234,H234,J234,L234,N234").ClearContents
        Range("B241,D238:O238,D240,F240,H240,J240,L240,N240").ClearContents
        Range("B247,D244:O244,D246,F246,H246,J246,L246,N246").ClearContents
        Range("B253,D250:O250,D252,F252,H252,J252,L252,N252").ClearContents
        Range("B259,D256:O256,D258,F258,H258,J258,L258,N258").ClearContents
        Range("B265,D262:O262,D264,F264,H264,J264,L264,N264").ClearContents
        Range("B271,D268:O268,D270,F270,H270,J270,L270,N270").ClearContents
        Range("B277,D274:O274,D276,F276,H276,J276,L276,N276").ClearContents
        Range("B283,D280:O280,D282,F282,H282,J282,L282,N282").ClearContents
        Range("B289,D286:O286,D288,F288,H288,J288,L288,N288").ClearContents
        Range("B295,D292:O292,D294,F294,H294,J294,L294,N294").ClearContents
        Range("B301,D298:O298,D300,F300,H300,J300,L300,N300").ClearContents
        Range("B307,D304:O304,D306,F306,H306,J306,L306,N306").ClearContents
        Range("B313,D310:O310,D312,F312,H312,J312,L312,N312").ClearContents
        Range("B319,D316:O316,D318,F318,H318,J318,L318,N318").ClearContents
        Range("B325,D322:O322,D324,F324,H324,J324,L324,N324").ClearContents
        Range("B331,D328:O328,D330,F330,H330,J330,L330,N330").ClearContents
        Range("B337,D334:O334,D336,F336,H336,J336,L336,N336").ClearContents
        Range("B343,D340:O340,D342,F342,H342,J342,L342,N342").ClearContents
        Range("B349,D346:O346,D348,F348,H348,J348,L348,N348").ClearContents
        Range("B355,D352:O352,D354,F354,H354,J354,L354,N354").ClearContents
        Range("B361,D358:O358,D360,F360,H360,J360,L360,N360").ClearContents
        Range("B367,C365,C364:O364,D366,F366,H366,J366,L366,N366").ClearContents
     
        Range("A1").Select
     
        ActiveSheet.Protect "xxxxx", UserInterfaceOnly:=True
     
        Application.Calculation = xlCalculationAutomatic
     
    End Sub

  2. #2
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Bonjour,

    Si j'ai bien vu, il y a un pas de 6, ce qui donnerait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Sub test()
    Dim i As Integer
     
    Application.Calculation = xlCalculationManual '<-- cette ligne n'est probablement pas indispensable
    With Sheets("xxx")
        .Unprotect "mdp"
        .Range("C4:C361").ClearContents
        For i = 6 To 366 Step 6
            .Range("B" & i + 1 & ",D" & i - 2 & ":O" & i - 2 & ",D" & i & ",F" & i & ",H" & i & ",J" & i & ",L" & i & ",N" & i).ClearContents
        Next
        .Protect "mdp", UserInterfaceOnly:=True
    End With
    Application.Calculation = xlCalculationAutomatic '<-- cette ligne n'est probablement pas indispensable
     
    End Sub

Discussions similaires

  1. Simplification de code
    Par lodan dans le forum Langage
    Réponses: 4
    Dernier message: 20/09/2006, 19h28
  2. Simplification de code
    Par lodan dans le forum Langage
    Réponses: 2
    Dernier message: 31/08/2006, 21h51
  3. Simplification de code (suite)
    Par Jeffboj dans le forum Access
    Réponses: 1
    Dernier message: 12/04/2006, 22h34
  4. simplification de code
    Par Jeffboj dans le forum Access
    Réponses: 11
    Dernier message: 11/04/2006, 15h09
  5. [c#] Simplification de code
    Par Revan012 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 04/02/2006, 16h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo