OVH Cloud OVH Cloud

Fonction INDIRECT

5 réponses
Avatar
Jean-Paul V
Bonjour à tous

J’ai dans ma colonne D mes noms de feuille
Dans la colonne E la fonction :
=INDIRECT($D58&"!$J2")&" "&STXT(INDIRECT($D58&"!$A$1");5;80)
Cette fonction permet avec J2 de récupérer une info dont le sujet est défini
en A1
Pourquoi lorsque je recopie cette fonction pour la copier sur la cellule
juste en dessous je n’obtiens pas mon J3 souhaité qui me donnerait la
deuxiéme info:

=INDIRECT($D58&"!$J3")&" "&STXT(INDIRECT($D58&"!$A$1");5;80)

Bien Amicalement
Jean-Paul V

5 réponses

Avatar
LSteph
Bonjour Jean Paul V,
Parceque "!$J3" est du texte (un rajout entre guillemets)
et n'est pas relatif comme le serait une référence !

Sinon , puisque tu postes un nouveau sujet tu pourrais peut être
lire les réponses et donner un retour sur ceux que tu as déjà postés!

17/08 lister les feuilles d'un fichier...
20/08 Affecter une macro...

Amicalement

lSteph

"Jean-Paul V" a écrit dans le message
de news:
Bonjour à tous

J'ai dans ma colonne D mes noms de feuille
Dans la colonne E la fonction :
=INDIRECT($D58&"!$J2")&" "&STXT(INDIRECT($D58&"!$A$1");5;80)
Cette fonction permet avec J2 de récupérer une info dont le sujet est
défini
en A1
Pourquoi lorsque je recopie cette fonction pour la copier sur la cellule
juste en dessous je n'obtiens pas mon J3 souhaité qui me donnerait la
deuxiéme info:

=INDIRECT($D58&"!$J3")&" "&STXT(INDIRECT($D58&"!$A$1");5;80)

Bien Amicalement
Jean-Paul V



Avatar
Jean-Paul V
Bonjour LSteph
Vu votre réponse , il semble qu'il n'y a pas de solution dans ce cas,dommage
car j'ai environs 200 lignes à modifier.
Je m'excuse de ne pas avoir répondu à toutes vos réponses
Et merci encore pour toutes vos réponses.
J'ai vérifié et il me semble que j'ai bien coché le OUI disant que vos
réponses m'ont été utiles.
Pour info grace à vos réponses j'ai modifié votre macro pour passer à la
feuille suivante même si la feuille suivante est cachée en faisant :
Sub FeuilleSuivante()
If ActiveSheet.Index = Sheets.Count Then
MENU
Else
ActiveSheet.Next.Visible = True
ActiveSheet.Next.Select
Range("A1:J1").Select
ActiveWindow.Zoom = True
Range("A2").Select
ActiveSheet.Previous.Visible = False
End If
End Sub

Mais bizarrement cela ne marche pas pour une ou deux feuilles et le retour
Menu ne marche pas ( mais menu n'est pas la première feuille je vais essayer
de la déplacer )

Bonne journée @+


Bonjour Jean Paul V,
Parceque "!$J3" est du texte (un rajout entre guillemets)
et n'est pas relatif comme le serait une référence !

Sinon , puisque tu postes un nouveau sujet tu pourrais peut être
lire les réponses et donner un retour sur ceux que tu as déjà postés!

17/08 lister les feuilles d'un fichier...
20/08 Affecter une macro...

Amicalement

lSteph

"Jean-Paul V" a écrit dans le message
de news:
Bonjour à tous

J'ai dans ma colonne D mes noms de feuille
Dans la colonne E la fonction :
=INDIRECT($D58&"!$J2")&" "&STXT(INDIRECT($D58&"!$A$1");5;80)
Cette fonction permet avec J2 de récupérer une info dont le sujet est
défini
en A1
Pourquoi lorsque je recopie cette fonction pour la copier sur la cellule
juste en dessous je n'obtiens pas mon J3 souhaité qui me donnerait la
deuxiéme info:

=INDIRECT($D58&"!$J3")&" "&STXT(INDIRECT($D58&"!$A$1");5;80)

Bien Amicalement
Jean-Paul V








Avatar
Jean-Paul V
Re Bonjour
Je viens de découvrir que en modifiant très légèrement votre macro j'ai la
réponse à mon problème merci encore:
Sub lalisteLS()
Dim Sh As Worksheet
With ActiveCell
.Value = "liste de " & ActiveWorkbook.Name
.Offset(0, 1) = "valeur j1"
Application.ScreenUpdating = False
For Each Sh In ActiveWorkbook.Worksheets
.Offset(Sh.Index, 0) = Sh.Name
.Offset(Sh.Index, 1) = "='" & Sh.Name & "'!$j$1"
Next
.EntireColumn.AutoFit
End With
Application.ScreenUpdating = True
End Sub

Sub lalisteLSModifiée()
Dim Sh As Worksheet
With ActiveCell
.Value = "liste de " & ActiveWorkbook.Name
.Offset(0, 1) = "valeur j1"
Application.ScreenUpdating = False
For Each Sh In ActiveWorkbook.Worksheets
.Offset(Sh.Index, 0) = Sh.Name
.Offset(Sh.Index, 1) = "='" & Sh.Name & "'!$j1"
Next
.EntireColumn.AutoFit
End With
Application.ScreenUpdating = True
End Sub

C'est génial merci encore !


Bonjour Jean Paul V,
Parceque "!$J3" est du texte (un rajout entre guillemets)
et n'est pas relatif comme le serait une référence !

Sinon , puisque tu postes un nouveau sujet tu pourrais peut être
lire les réponses et donner un retour sur ceux que tu as déjà postés!

17/08 lister les feuilles d'un fichier...
20/08 Affecter une macro...

Amicalement

lSteph

"Jean-Paul V" a écrit dans le message
de news:
Bonjour à tous

J'ai dans ma colonne D mes noms de feuille
Dans la colonne E la fonction :
=INDIRECT($D58&"!$J2")&" "&STXT(INDIRECT($D58&"!$A$1");5;80)
Cette fonction permet avec J2 de récupérer une info dont le sujet est
défini
en A1
Pourquoi lorsque je recopie cette fonction pour la copier sur la cellule
juste en dessous je n'obtiens pas mon J3 souhaité qui me donnerait la
deuxiéme info:

=INDIRECT($D58&"!$J3")&" "&STXT(INDIRECT($D58&"!$A$1");5;80)

Bien Amicalement
Jean-Paul V








Avatar
LSteph
Bonjour Jean-Paul V,

J'ai vérifié et il me semble que j'ai bien coché le OUI disant que vos
Je comprends , tu passes par l'interface internet,

il est conseillé plutôt d'utiliser news.microsoft.com come serveur de news.
pour mieux suivre le forum dans outlookexpress ou thunderbird ou ...autre
outil de messagerie.

Vu votre réponse , il semble qu'il n'y a pas de solution dans ce
cas,dommage


Je n'ai pas dit cela , je t'ai juste indiqué ce qui coince, il suffit de
corriger
mais slon les dispositions de tes formules dans la feuille une solution
possible j'imagine en E58 :
=INDIRECT($D58&"!$J"&LIGNE()-56)

'lSteph

"Jean-Paul V" a écrit dans le message
de news:
Bonjour LSteph
Vu votre réponse , il semble qu'il n'y a pas de solution dans ce
cas,dommage
car j'ai environs 200 lignes à modifier.
Je m'excuse de ne pas avoir répondu à toutes vos réponses
Et merci encore pour toutes vos réponses.
J'ai vérifié et il me semble que j'ai bien coché le OUI disant que vos
réponses m'ont été utiles.
Pour info grace à vos réponses j'ai modifié votre macro pour passer à la
feuille suivante même si la feuille suivante est cachée en faisant :
Sub FeuilleSuivante()
If ActiveSheet.Index = Sheets.Count Then
MENU
Else
ActiveSheet.Next.Visible = True
ActiveSheet.Next.Select
Range("A1:J1").Select
ActiveWindow.Zoom = True
Range("A2").Select
ActiveSheet.Previous.Visible = False
End If
End Sub

Mais bizarrement cela ne marche pas pour une ou deux feuilles et le retour
Menu ne marche pas ( mais menu n'est pas la première feuille je vais
essayer
de la déplacer )

Bonne journée @+


Bonjour Jean Paul V,
Parceque "!$J3" est du texte (un rajout entre guillemets)
et n'est pas relatif comme le serait une référence !

Sinon , puisque tu postes un nouveau sujet tu pourrais peut être
lire les réponses et donner un retour sur ceux que tu as déjà postés!

17/08 lister les feuilles d'un fichier...
20/08 Affecter une macro...

Amicalement

lSteph

"Jean-Paul V" a écrit dans le
message
de news:
Bonjour à tous

J'ai dans ma colonne D mes noms de feuille
Dans la colonne E la fonction :
=INDIRECT($D58&"!$J2")&" "&STXT(INDIRECT($D58&"!$A$1");5;80)
Cette fonction permet avec J2 de récupérer une info dont le sujet est
défini
en A1
Pourquoi lorsque je recopie cette fonction pour la copier sur la
cellule
juste en dessous je n'obtiens pas mon J3 souhaité qui me donnerait la
deuxiéme info:

=INDIRECT($D58&"!$J3")&" "&STXT(INDIRECT($D58&"!$A$1");5;80)

Bien Amicalement
Jean-Paul V










Avatar
LSteph
re,bonjour,
je ne vois pas clairement la modif...

"Jean-Paul V" a écrit dans le message
de news:
Re Bonjour
Je viens de découvrir que en modifiant très légèrement votre macro j'ai la
réponse à mon problème merci encore:
Sub lalisteLS()
Dim Sh As Worksheet
With ActiveCell
.Value = "liste de " & ActiveWorkbook.Name
.Offset(0, 1) = "valeur j1"
Application.ScreenUpdating = False
For Each Sh In ActiveWorkbook.Worksheets
.Offset(Sh.Index, 0) = Sh.Name
.Offset(Sh.Index, 1) = "='" & Sh.Name & "'!$j$1"
Next
.EntireColumn.AutoFit
End With
Application.ScreenUpdating = True
End Sub

Sub lalisteLSModifiée()
Dim Sh As Worksheet
With ActiveCell
.Value = "liste de " & ActiveWorkbook.Name
.Offset(0, 1) = "valeur j1"
Application.ScreenUpdating = False
For Each Sh In ActiveWorkbook.Worksheets
.Offset(Sh.Index, 0) = Sh.Name
.Offset(Sh.Index, 1) = "='" & Sh.Name & "'!$j1"
Next
.EntireColumn.AutoFit
End With
Application.ScreenUpdating = True
End Sub

C'est génial merci encore !


Bonjour Jean Paul V,
Parceque "!$J3" est du texte (un rajout entre guillemets)
et n'est pas relatif comme le serait une référence !

Sinon , puisque tu postes un nouveau sujet tu pourrais peut être
lire les réponses et donner un retour sur ceux que tu as déjà postés!

17/08 lister les feuilles d'un fichier...
20/08 Affecter une macro...

Amicalement

lSteph

"Jean-Paul V" a écrit dans le
message
de news:
Bonjour à tous

J'ai dans ma colonne D mes noms de feuille
Dans la colonne E la fonction :
=INDIRECT($D58&"!$J2")&" "&STXT(INDIRECT($D58&"!$A$1");5;80)
Cette fonction permet avec J2 de récupérer une info dont le sujet est
défini
en A1
Pourquoi lorsque je recopie cette fonction pour la copier sur la
cellule
juste en dessous je n'obtiens pas mon J3 souhaité qui me donnerait la
deuxiéme info:

=INDIRECT($D58&"!$J3")&" "&STXT(INDIRECT($D58&"!$A$1");5;80)

Bien Amicalement
Jean-Paul V