Récupération de la valeur d'une variable dans un classeur excel, sans savoir sa feuille origine

Soyez le premier à donner votre avis sur cette source.

Snippet vu 8 328 fois - Téléchargée 42 fois

Contenu du snippet

on passe en paramètres le nom du classeur (ouvert) et le nom de la variable
on récupère la valeur de la variable

Source / Exemple :


'Fonction permettant d'utiliser au sein d'un programme en VBA,
'la valeur d'une cellule définie par son nom dans un fichier Excel (cClasseur)
'sans savoir dans quelle feuille du classeur est défini ce nom (cnomvar)
'(Nom défini en global dans le classeur)
'
Public Function ValeurNom(cClasseur As String, cnomvar As String)
Dim nNewVal As Variant, nPosi As Integer, cCC1 As String, cCV1 As String
On Error GoTo VersInconnu
nNewVal = Workbooks(cClasseur).Names(cnomvar).RefersTo
nPosi = InStr(1, nNewVal, "!", 0)
If Mid$(nNewVal, 2, 1) <> "'" Then
    cCC1 = Mid$(nNewVal, 2, nPosi - 2)
Else
    cCC1 = Mid$(nNewVal, 3, nPosi - 4)
End If
cCV1 = Mid$(nNewVal, nPosi + 1)
ValeurNom = Workbooks(cClasseur).Sheets(cCC1).Range(cCV1).Value
VVEnd:
Exit Function
VersInconnu:
ValeurNom = 0
Resume VVEnd
End Function

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.