Bonjour
Dans la formule suivante, [Analytique07.xls]toto! fait référence au classeur
analytique07 feuille toto.
=SOMMEPROD((JOURS360([Analytique07.xls]toto!$A$2:$A$273;"01/01/07")<=0)*(JOU
RS360([Analytique07.xls]toto!$A$2:$A$273;"01/02/07")>0)*([Analytique07.xls]t
oto!D$2:D$273))
Comment puis-je au lieu d'écrire toto indiquer une référence de cellule
contenant toto car si je remplace toto par A3 par exemple cela ne marche
pas.
Merci d'avance
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
MichDenis
Je ne pense pas que tu puisse scinder cette formule pour remplacer le nom de la feuille de la liaison par une référence à une cellule contenant le nom de la feuille.
Cependant, tu peux te créer une petite macro qui aura pour objet de remplacer (substituer) à volonté le nom de la feuille par un autre
NB : Au lieu de demander les noms des feuilles, tu peux faire référence au contenu des cellules spécialement dédiées à cette tâche !
'--------------------------------- Sub SubstituerNomFeuille()
Dim Sh As Worksheet, F As Range, Z As String Dim Ancien As String, Nouveau As String
Ancien = Application.InputBox("Ancien nom de la feuille") Nouveau = Application.InputBox("Nom nouveau de la feuille")
On Error Resume Next If Ancien <> "" And Nouveau <> "" Then For Each Sh In Worksheets With Sh.Cells Set F = .Find(What:=Ancien, _ LookIn:=xlFormulas, LookAt:=xlPart) If Not F Is Nothing Then adr = F.Address Do Z = F.Formula Z = Replace(Z, Ancien, Nouveau, , , vbTextCompare) F.Formula = Z Set F = .FindNext(F) Loop While Not F Is Nothing And F.Address <> adr End If End With Next End If End Sub '---------------------------------
"ppinede" a écrit dans le message de news: 457e54d5$0$5066$ Bonjour Dans la formule suivante, [Analytique07.xls]toto! fait référence au classeur analytique07 feuille toto. =SOMMEPROD((JOURS360([Analytique07.xls]toto!$A$2:$A$273;"01/01/07")<=0)*(JOU RS360([Analytique07.xls]toto!$A$2:$A$273;"01/02/07")>0)*([Analytique07.xls]t oto!D$2:D$273)) Comment puis-je au lieu d'écrire toto indiquer une référence de cellule contenant toto car si je remplace toto par A3 par exemple cela ne marche pas. Merci d'avance
Je ne pense pas que tu puisse scinder cette formule pour remplacer
le nom de la feuille de la liaison par une référence à une cellule
contenant le nom de la feuille.
Cependant, tu peux te créer une petite macro qui aura pour objet
de remplacer (substituer) à volonté le nom de la feuille par un autre
NB : Au lieu de demander les noms des feuilles, tu peux faire référence
au contenu des cellules spécialement dédiées à cette tâche !
'---------------------------------
Sub SubstituerNomFeuille()
Dim Sh As Worksheet, F As Range, Z As String
Dim Ancien As String, Nouveau As String
Ancien = Application.InputBox("Ancien nom de la feuille")
Nouveau = Application.InputBox("Nom nouveau de la feuille")
On Error Resume Next
If Ancien <> "" And Nouveau <> "" Then
For Each Sh In Worksheets
With Sh.Cells
Set F = .Find(What:=Ancien, _
LookIn:=xlFormulas, LookAt:=xlPart)
If Not F Is Nothing Then
adr = F.Address
Do
Z = F.Formula
Z = Replace(Z, Ancien, Nouveau, , , vbTextCompare)
F.Formula = Z
Set F = .FindNext(F)
Loop While Not F Is Nothing And F.Address <> adr
End If
End With
Next
End If
End Sub
'---------------------------------
"ppinede" <ppinede@wanadoo.fr> a écrit dans le message de news:
457e54d5$0$5066$ba4acef3@news.orange.fr...
Bonjour
Dans la formule suivante, [Analytique07.xls]toto! fait référence au classeur
analytique07 feuille toto.
=SOMMEPROD((JOURS360([Analytique07.xls]toto!$A$2:$A$273;"01/01/07")<=0)*(JOU
RS360([Analytique07.xls]toto!$A$2:$A$273;"01/02/07")>0)*([Analytique07.xls]t
oto!D$2:D$273))
Comment puis-je au lieu d'écrire toto indiquer une référence de cellule
contenant toto car si je remplace toto par A3 par exemple cela ne marche
pas.
Merci d'avance
Je ne pense pas que tu puisse scinder cette formule pour remplacer le nom de la feuille de la liaison par une référence à une cellule contenant le nom de la feuille.
Cependant, tu peux te créer une petite macro qui aura pour objet de remplacer (substituer) à volonté le nom de la feuille par un autre
NB : Au lieu de demander les noms des feuilles, tu peux faire référence au contenu des cellules spécialement dédiées à cette tâche !
'--------------------------------- Sub SubstituerNomFeuille()
Dim Sh As Worksheet, F As Range, Z As String Dim Ancien As String, Nouveau As String
Ancien = Application.InputBox("Ancien nom de la feuille") Nouveau = Application.InputBox("Nom nouveau de la feuille")
On Error Resume Next If Ancien <> "" And Nouveau <> "" Then For Each Sh In Worksheets With Sh.Cells Set F = .Find(What:=Ancien, _ LookIn:=xlFormulas, LookAt:=xlPart) If Not F Is Nothing Then adr = F.Address Do Z = F.Formula Z = Replace(Z, Ancien, Nouveau, , , vbTextCompare) F.Formula = Z Set F = .FindNext(F) Loop While Not F Is Nothing And F.Address <> adr End If End With Next End If End Sub '---------------------------------
"ppinede" a écrit dans le message de news: 457e54d5$0$5066$ Bonjour Dans la formule suivante, [Analytique07.xls]toto! fait référence au classeur analytique07 feuille toto. =SOMMEPROD((JOURS360([Analytique07.xls]toto!$A$2:$A$273;"01/01/07")<=0)*(JOU RS360([Analytique07.xls]toto!$A$2:$A$273;"01/02/07")>0)*([Analytique07.xls]t oto!D$2:D$273)) Comment puis-je au lieu d'écrire toto indiquer une référence de cellule contenant toto car si je remplace toto par A3 par exemple cela ne marche pas. Merci d'avance