salut
j ai un petit souci
je voudrais passer une variable a ce code
ma variable est un chiffreCode:
1
2 call macro(variable)
est ce possible ?
je ne trouve pas le code exact
merci
Version imprimable
salut
j ai un petit souci
je voudrais passer une variable a ce code
ma variable est un chiffreCode:
1
2 call macro(variable)
est ce possible ?
je ne trouve pas le code exact
merci
Salut,
Tu veux passer une variable à une fonction ?
ceci est un peu flou ...
Dolphy ;)
dans ton cas variable s'appelle un argument et bien sur c'est possible, tu ne nous dis pas ou est le probleme. tu peux essayer d'enlever les parentheses
Code:
1
2
3
4
5
6
7
8 Sub plusdeux(mavariable) mavariable = mavariable + 2 End Sub Sub truc() a = 5 plusdeux a MsgBox a End Sub
je vous file mon code
j aimerai virer tous ces if et remplacer par un code genreCode:
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 Sub macro1(ligne As Variant, cellul As Variant, cellul2 As Variant, macreau As Variant) Sheets("Feuil2").Select code = Range(ligne).Value Sheets("Feuil1").Select Range("a1").Value = code For i = 1 To Len(code) cod = cod + Mid(code, i, 1) Next i Sheets("feuil1").Select: Range(cellul) = cod For i = 1 To Len(cod) If Mid(cod, i, 1) >= 0 And Mid(cod, i, 1) <= 9 Or Mid(cod, i, 1) = "." Then affichage = affichage + Mid(cod, i, 1) Next i: Sheets("feuil1").Select: Range(cellul2).Value = affichage If macreau = 2 Then Call macro2 If macreau = 3 Then Call macro3 If macreau = 4 Then Call macro4 If macreau = 5 Then Call macro5 If macreau = 6 Then Call macro6 If macreau = 7 Then Call macro7 If macreau = 8 Then Call macro8 If macreau = 9 Then Call macro9 If macreau = 10 Then Call macro10 If macreau = 11 Then Call macro11 If macreau = 12 Then Call macro12 If macreau = 13 Then Call macro13 If macreau = 14 Then Call macro14 If macreau = 15 Then Call macro15 If macreau = 16 Then Call macro16 If macreau = 17 Then Call macro17 If macreau = 18 Then Call macro18 If macreau = 19 Then Call macro19 If macreau = 20 Then Call macro20 If macreau = 21 Then Call macro21 If macreau = 22 Then Call macro22 If macreau = 23 Then Call macro23 If macreau = 24 Then Call macro24 If macreau = 25 Then Call macro25 If macreau = 26 Then Call macro26 If macreau = 27 Then Call macro27 If macreau = 28 Then Call macro28 If macreau = 29 Then Call macro29 If macreau = 30 Then Call macro30 If macreau = 31 Then Call macro31 If macreau = 32 Then Call macro32 If macreau = 33 Then Call macro33 If macreau = 34 Then Call macro34 If macreau = 35 Then Call macro35 If macreau = 36 Then Call macro36 If macreau = 37 Then Call macro37 If macreau = 38 Then Call macro38 If macreau = 39 Then Call macro39 If macreau = "insert" Then Call insert End Sub
ou macreau est mon prametre qui appelle la macro1 puis 2 etc ...Code:
1
2 call macro(macreau)
Teste ça ;)Code:
1
2
3
4
5
6
7
8 Sub Macro1() Range("F2").Value = "kjlmkkmù" End Sub Sub laMacro() Maquereau = 1 Application.Run "Macro" & Maquereau End Sub
Tu peux ajouter le nom du classeur contenant tes macros
nickel
ca marche avec
il vaut donc mieux utiliser ca que callCode:
1
2Application.Run "Macro" & Maquereau
merci