Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Récupérer une valeur

4 réponses
Avatar
Flac
Bonjour,
Excel 2000.
À l'ouverture d'un dossier, je détermine une valeur en écrivant la procédure
suivante:
Private Sub Workbook_Open()
Set myrange = Worksheets("feuil1").Range("Source")
answer = WorksheetFunction.CountA(myrange)
End Sub

J'essaie de récupérer cette valeur dans une procédure d'un module ordinaire,
sans que cette valeur change même si ma plage s'agrandit, mais je n'y
parviens pas.
Y aurait-il une façon de procéder?

Merci à l'avance.

Flac

4 réponses

Avatar
Daniel.C
Bonjour.
Déclare "answer" dans un module :
Public answer
Cordialement.
Daniel
"Flac" a écrit dans le message de news:
u$%
Bonjour,
Excel 2000.
À l'ouverture d'un dossier, je détermine une valeur en écrivant la
procédure suivante:
Private Sub Workbook_Open()
Set myrange = Worksheets("feuil1").Range("Source")
answer = WorksheetFunction.CountA(myrange)
End Sub

J'essaie de récupérer cette valeur dans une procédure d'un module
ordinaire, sans que cette valeur change même si ma plage s'agrandit, mais
je n'y parviens pas.
Y aurait-il une façon de procéder?

Merci à l'avance.

Flac



Avatar
Flac
Bonjour,
J'ai essayé en déclarant
Public Sub variables()
Dim answer
End Sub
dans le module 1.
Mais quand je réfère à la variable "answer" j'ai comme résultat "vide" alors
que je devrais avoir
un nombre entier correspondant au nombre de lignes non-vides dans la colonne
A de la "feuil1" lors de l'ouverture du fichier.
Merci

Flac


"Daniel.C" a écrit dans le message de news:

Bonjour.
Déclare "answer" dans un module :
Public answer
Cordialement.
Daniel
"Flac" a écrit dans le message de news:
u$%
Bonjour,
Excel 2000.
À l'ouverture d'un dossier, je détermine une valeur en écrivant la
procédure suivante:
Private Sub Workbook_Open()
Set myrange = Worksheets("feuil1").Range("Source")
answer = WorksheetFunction.CountA(myrange)
End Sub

J'essaie de récupérer cette valeur dans une procédure d'un module
ordinaire, sans que cette valeur change même si ma plage s'agrandit,
mais je n'y parviens pas.
Y aurait-il une façon de procéder?

Merci à l'avance.

Flac







Avatar
Jacky
Bonsoir,

Perso, pour définir une variable je lui donne un nom.
Dans ton exemple , ("source" étant déjà défini)
'---------
Private Sub Workbook_Open()
ActiveWorkbook.Names.Add Name:="answer", RefersTo:="=COUNTA(source)"
End Sub
'---------
J'essaie de récupérer cette valeur dans une procédure d'un module
ordinaire, ....



Dans un module
'------
Sub test()
MsgBox [answer]
End Sub
'----------

--
Salutations
JJ


"Flac" a écrit dans le message de news:
u$%
Bonjour,
Excel 2000.
À l'ouverture d'un dossier, je détermine une valeur en écrivant la
procédure suivante:
Private Sub Workbook_Open()
Set myrange = Worksheets("feuil1").Range("Source")
answer = WorksheetFunction.CountA(myrange)
End Sub

J'essaie de récupérer cette valeur dans une procédure d'un module
ordinaire, sans que cette valeur change même si ma plage s'agrandit, mais
je n'y parviens pas.
Y aurait-il une façon de procéder?

Merci à l'avance.

Flac



Avatar
Daniel.C
Un exemple ppour illustrer mon propos :
http://cjoint.com/?ibxd5yUxsZ
Daniel
"Flac" a écrit dans le message de news:

Bonjour,
J'ai essayé en déclarant
Public Sub variables()
Dim answer
End Sub
dans le module 1.
Mais quand je réfère à la variable "answer" j'ai comme résultat "vide"
alors que je devrais avoir
un nombre entier correspondant au nombre de lignes non-vides dans la
colonne A de la "feuil1" lors de l'ouverture du fichier.
Merci

Flac


"Daniel.C" a écrit dans le message de news:

Bonjour.
Déclare "answer" dans un module :
Public answer
Cordialement.
Daniel
"Flac" a écrit dans le message de news:
u$%
Bonjour,
Excel 2000.
À l'ouverture d'un dossier, je détermine une valeur en écrivant la
procédure suivante:
Private Sub Workbook_Open()
Set myrange = Worksheets("feuil1").Range("Source")
answer = WorksheetFunction.CountA(myrange)
End Sub

J'essaie de récupérer cette valeur dans une procédure d'un module
ordinaire, sans que cette valeur change même si ma plage s'agrandit,
mais je n'y parviens pas.
Y aurait-il une façon de procéder?

Merci à l'avance.

Flac