Créer une fonction pour recupérer une valeur dans un autre onglet

V

Vinz

Guest
Bonjour,

Je débute et je cherche à créer une fonction qui me retourne la valeur de la cellule situé dans l'onglet passé en paramètre.

Ca donnerais quelque chose du style RetourneValeur("D12","D23") avec D12 qui contient le numéro de cellule à récupérer et D23 le nom de l'onglet dans lequel il faut aller chercher la cellule

J'ai essayé de faire quelque chos du style

Public Function TrouveValeurCell(Cellule, Onglet)
Sheets(Onglet).Select
TrouveValeurCell = Cells(Cellule)
End Function

mais ca donne pas grand chose...
 
V

Vinz

Guest
J'ai cherché un peu et j'ai trouvé quelquechose qui marche, voici le code avec quelques commentaires

Public Function TrouveValeurCell(Cellule As String, Onglet As String)
'Fonction permettant de récupérer la valeur d'une cellule d'un onglet
'suivant les valeurs passées en paramètre

'Boucle permettant de récupérer la valeur numérique contenue dans Cellule
i = 0
Do
i = i + 1
PartNum = Right(Cellule, Len(Cellule) - i)
Loop Until (IsNumeric(PartNum) = True)

'Récupération de la partie charactère
PartChar = Left(Cellule, i)
'Passage en majuscule
PartChar = StrConv(PartChar, 1)
'Conversion en valeur numérique dans ValNum
ValNum = 0
j = 0
Do
TempChar = Right(PartChar, j + 1)
ValNum = ValNum + (Asc(TempChar) - 64) * 26 ^ j
j = j + 1
Loop Until j = i

TrouveValeurCell = Sheets(Onglet).Cells(PartNum, ValNum).Value
End Function

Voilà ca pourra peut etre servir
 

Discussions similaires

Statistiques des forums

Discussions
312 316
Messages
2 087 176
Membres
103 491
dernier inscrit
bilg1