J'essaie de générer 3 listes sur une page qui montre la plage A: A des 3 jours précédents en utilisant la formule INDIRECTE et la concaténation (ex: INDIRECT ("'" & B2 & « 'A2" !) où B2 serait égal au nom de t, mais je dois tirer le nom de la feuille de jour avant (par exemple:. 10-17) dans la cellule B2Trouver le nom d'une feuille de calcul en utilisant la référence relative
J'ai un fonction de travail qui peut trouver la valeur d'une cellule dans une autre feuillepar emplacement relatif, mais je ne peux pas sembler obtenir le nom de la feuille par position relative.
Function NextSheet(rCell As Range)
Application.Volatile
Dim i As Integer
i = rCell.Cells(1).Parent.Index
NextSheet = Sheets(i + 3).Range(rCell.Address)
End Function
et une autre fonction qui peut renvoyer le nom de la feuille de la feuille:
Function SheetName(rCell As Range, Optional UseAsRef As Boolean) As String
Application.Volatile
If UseAsRef = True Then
SheetName = "'" & rCell.Parent.Name & "'!"
Else
SheetName = rCell.Parent.Name
End If
End Function
Mais je ne peux pas sembler les utiliser ensemble (ex: NextSheet (SheetName (A2)), ou SheetName (NextSheet (A2) Y at-il une fonction similaire que je pourrais utiliser pour retourner le nom de la feuille par position relative? Question secondaire: Est-ce que je ne peux pas appeler une fonction créée par l'utilisateur à l'intérieur d'une autre fonction créée par l'utilisateur comme celle-ci, ou est-ce qu'elle n'est pas correctement configurée pour être appelée l'une dans l'autre?
Lorsque vous utilisez NextSheet, qu'attendez-vous comme un retour? Actuellement, il retournera le *** VALUE *** d'une cellule sur une page 3 de la référence. Et vous ne pouvez pas renvoyer la valeur en tant qu'objet range à Sheetname. –