Bonjour,
L'aide du site, comme Microsoft, dit "on peut" mais s'abstient de dire "Comment" à un endroit évident.
Mon code testé:
Réponse de vba sur worksheets(Fl).activate : erreur 1004
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Function changerFll(Fl As String) As String ' récupération de la feuille active changerFll = ActiveSheet.Name Worksheets(Fl).Activate End Function 'changerFeuille(Fl As Sring) As Sheets
![]()
Fl : chaine de caractère obtenue par copie du label de la feuille à activer.
code pour controler ma fonction :
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 Sub Macro1() ' ' Macro1 Macro ' Dim titreBx As String, Ou As String, Fl As String Dim Msg As String, RC As String, msgBx As Integer RC = Chr(10) Ou = "B8" 'Fl = "mixte 4" Fl = "Patton" titeBx = "lireCllFll(Fl, Ou)" Msg = lireCllFll(Fl, Ou) 'msg = MsgBox(lireCll(Ou), vbOKOnly + vbInformation, titreBx) End Sub ' Lecture du contenu de la 1ère cellule de la zone Ou de la feuille Fl ' 1/ Est-il utile de changer de feuille active ? ' 2/ Avec la syntaxe flOu = Sheets(Fl).name&!"&Ou : échec de Range(flOu) ? Function lireCllFll(Fl As String, Ou As String) As String ' essai du cas 2/ ' Dim flOu As String, msg As Integer ' flOu = Sheets(Fl).Name & "!" & Ou ' lireCllFll = Range(Fl).Value ' msg = MsgBox(lireCellFl, vbOKOnly + vbInformation, flOu) ' essai cas 1 Dim flInit As String fllinit = changerFll(Fl) lireCllFll = lireCll(Ou) End Function 'lireCllFll(Ou As String) As String
Partager