Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Lister les valeurs d'une cellule dans plusieurs Feuilles...

13 réponses
Avatar
Const.
Bonjour,

Voilà j'ai deux choses à faire :

1) Je voudrait inclure dans une cellule le nom de la feuille courante,
est-ce possible ??

2) J'aimerais pouvoir faire une feuille dans mon classeur avec une liste
(par ligne) de la valeur de certaine case de mes autres feuilles; Je
m'explique mieux :)

Chaque feuilles correspond à un devis. Je voudrait une autre feuille
avec la liste de ces devis avec :
Colonne 1 : Le numéro du devis (le nom de la feuille)
Colonne 2 : Le nom du client (la case D6 de chaque feuille)
Colonne 3 : La date du devis (la case F8 de chaque feuille)
Colonne 4 : L'objet du devis (la case H4 de chaque feuille)


Est-ce possible ? Si oui, comment ??

Merci de votre aide.

Const.

10 réponses

1 2
Avatar
Daniel
Bonjour.
Pour la première question :
=DROITE(CELLULE("filename";A1);NBCAR(CELLULE("filename";A1))-TROUVE("]";CELLULE("filename";A1);1))
Pour la seconde (les données étant regroupées sur une feuille baptisée
"Synthese") :

Sub test()
Dim sh As Worksheet, Ctr As Integer
For Each sh In Sheets
If sh.Name <> "Synthese" Then
Ctr = Ctr + 1
Sheets("Synthese").Range("A" & Ctr) = sh.Name
Sheets("Synthese").Range("B" & Ctr) =
Sheets(sh.Name).Range("D6")
Sheets("Synthese").Range("C" & Ctr) =
Sheets(sh.Name).Range("F8")
Sheets("Synthese").Range("D" & Ctr) =
Sheets(sh.Name).Range("H4")
End If
Next
End Sub

Cordialement.
Daniel
"Const." a écrit dans le message de news:
42becf1e$0$17001$
Bonjour,

Voilà j'ai deux choses à faire :

1) Je voudrait inclure dans une cellule le nom de la feuille courante,
est-ce possible ??

2) J'aimerais pouvoir faire une feuille dans mon classeur avec une liste
(par ligne) de la valeur de certaine case de mes autres feuilles; Je
m'explique mieux :)

Chaque feuilles correspond à un devis. Je voudrait une autre feuille avec
la liste de ces devis avec :
Colonne 1 : Le numéro du devis (le nom de la feuille)
Colonne 2 : Le nom du client (la case D6 de chaque feuille)
Colonne 3 : La date du devis (la case F8 de chaque feuille)
Colonne 4 : L'objet du devis (la case H4 de chaque feuille)


Est-ce possible ? Si oui, comment ??

Merci de votre aide.

Const.


Avatar
Const.
ça marche très bien, merci beaucoup!! :D

Bonjour.
Pour la première question :
=DROITE(CELLULE("filename";A1);NBCAR(CELLULE("filename";A1))-TROUVE("]";CELLULE("filename";A1);1))
Pour la seconde (les données étant regroupées sur une feuille baptisée
"Synthese") :

Sub test()
Dim sh As Worksheet, Ctr As Integer
For Each sh In Sheets
If sh.Name <> "Synthese" Then
Ctr = Ctr + 1
Sheets("Synthese").Range("A" & Ctr) = sh.Name
Sheets("Synthese").Range("B" & Ctr) =
Sheets(sh.Name).Range("D6")
Sheets("Synthese").Range("C" & Ctr) =
Sheets(sh.Name).Range("F8")
Sheets("Synthese").Range("D" & Ctr) =
Sheets(sh.Name).Range("H4")
End If
Next
End Sub

Cordialement.
Daniel
"Const." a écrit dans le message de news:
42becf1e$0$17001$

Bonjour,

Voilà j'ai deux choses à faire :

1) Je voudrait inclure dans une cellule le nom de la feuille courante,
est-ce possible ??

2) J'aimerais pouvoir faire une feuille dans mon classeur avec une liste
(par ligne) de la valeur de certaine case de mes autres feuilles; Je
m'explique mieux :)

Chaque feuilles correspond à un devis. Je voudrait une autre feuille avec
la liste de ces devis avec :
Colonne 1 : Le numéro du devis (le nom de la feuille)
Colonne 2 : Le nom du client (la case D6 de chaque feuille)
Colonne 3 : La date du devis (la case F8 de chaque feuille)
Colonne 4 : L'objet du devis (la case H4 de chaque feuille)


Est-ce possible ? Si oui, comment ??

Merci de votre aide.

Const.







Avatar
Const.
Merci pour la réponse, autre question plus dur maintenant :D


Est-il possible, et si oui comment, de "marquer une valeur". je
m'explique encore :
Je voudrait récupérer une valeure d'une autre feuille dans ma liste,
mais en en sachant pas quelle case c'est (elle change tout le temps en
faite). Je pensait la marquée, comme une variable, et ensuite récupérer
la variable de la feuille... vous me comprenez ???

Merci encore.

Const.
Avatar
Daniel
Tu veux récupérer la valeur variable d'une cellule dont tu ne connais pas
l'adresse ?
Si c'est bien cela, on peut récupérer la valeur, de chaque cellule modifiée
en utilisant l'événement "change" :

Private Sub Worksheet_Change(ByVal Target As Range)
MsgBox Target.Value
End Sub

Cordialement.
Daniel
"Const." a écrit dans le message de news:
42bf1a15$0$15419$
Merci pour la réponse, autre question plus dur maintenant :D


Est-il possible, et si oui comment, de "marquer une valeur". je m'explique
encore :
Je voudrait récupérer une valeure d'une autre feuille dans ma liste, mais
en en sachant pas quelle case c'est (elle change tout le temps en faite).
Je pensait la marquée, comme une variable, et ensuite récupérer la
variable de la feuille... vous me comprenez ???

Merci encore.

Const.


Avatar
Const.
Tu veux récupérer la valeur variable d'une cellule dont tu ne connais pas
l'adresse ?
Si c'est bien cela, on peut récupérer la valeur, de chaque cellule modifiée
en utilisant l'événement "change" :

Private Sub Worksheet_Change(ByVal Target As Range)
MsgBox Target.Value
End Sub

En fait, je pensais plutôt à quelque chose du genre (code pour ma cellule) :



Dim Total As Decimal
Total = VelurDeLaCellule



Et ensuite, dans ma feuille de listing, dans la boucle je récupère la
valeur de Total de chaque feuille...

Mais je ne sais pas le mettre en code.

merci.

Avatar
ChrisV
Bonjour Const.

Ou encore...

1)
=STXT(CELLULE("filename";A1);TROUVE("]";CELLULE("filename";A1))+1;31)

2)
Sub zaza()
Dim i As Integer
With Application
.ScreenUpdating = False
.DisplayAlerts = False
End With
On Error Resume Next
Sheets("Listing").Delete
Set reC = Sheets.Add(Sheets(1))
With reC
.Name = "Listing"
[A1:D1] = [{"n°Dev.","Client","dateDev.","obj.Dev."}]
.Columns(3).NumberFormat = "m/d/yyyy"
For i = 2 To Sheets.Count
.Cells(i, 1) = Sheets(i).Name
.Cells(i, 2) = Sheets(i).[D6]
.Cells(i, 3) = Sheets(i).[F8]
.Cells(i, 4) = Sheets(i).[H4]
Next i
End With
Set reC = Nothing
End Sub


ChrisV


"Const." a écrit dans le message de news:
42becf1e$0$17001$
Bonjour,

Voilà j'ai deux choses à faire :

1) Je voudrait inclure dans une cellule le nom de la feuille courante,
est-ce possible ??

2) J'aimerais pouvoir faire une feuille dans mon classeur avec une liste
(par ligne) de la valeur de certaine case de mes autres feuilles; Je
m'explique mieux :)

Chaque feuilles correspond à un devis. Je voudrait une autre feuille avec
la liste de ces devis avec :
Colonne 1 : Le numéro du devis (le nom de la feuille)
Colonne 2 : Le nom du client (la case D6 de chaque feuille)
Colonne 3 : La date du devis (la case F8 de chaque feuille)
Colonne 4 : L'objet du devis (la case H4 de chaque feuille)


Est-ce possible ? Si oui, comment ??

Merci de votre aide.

Const.


Avatar
ChrisV
Re,

Si la position du total change en fonction du nombre de lignes du devis, la
colonne reste je suppose inchangée...
De quelle colonne s'agit-il ?


ChrisV


"Const." a écrit dans le message de news:
42bf205f$0$15420$
Tu veux récupérer la valeur variable d'une cellule dont tu ne connais pas
l'adresse ?
Si c'est bien cela, on peut récupérer la valeur, de chaque cellule
modifiée en utilisant l'événement "change" :

Private Sub Worksheet_Change(ByVal Target As Range)
MsgBox Target.Value
End Sub

En fait, je pensais plutôt à quelque chose du genre (code pour ma cellule)

:


Dim Total As Decimal
Total = VelurDeLaCellule



Et ensuite, dans ma feuille de listing, dans la boucle je récupère la
valeur de Total de chaque feuille...

Mais je ne sais pas le mettre en code.

merci.



Avatar
Const.
Re,

Si la position du total change en fonction du nombre de lignes du devis, la
colonne reste je suppose inchangée...
De quelle colonne s'agit-il ?


Effectivement, c'est la colonne F


Avatar
ChrisV
Re,

En supposant le total en Fxx soit la dernière cellule renseignée de la
colonne F...

Sub zaza()
Dim i As Integer
With Application
.ScreenUpdating = False
.DisplayAlerts = False
End With
On Error Resume Next
Sheets("Listing").Delete
Set reC = Sheets.Add(Sheets(1))
With reC
.Name = "Listing"
.[A1:E1] = [{"n°Dev.","Client","dateDev.","objDev.","totDev"}]
.Columns(3).NumberFormat = "m/d/yyyy"
For i = 2 To Sheets.Count
.Cells(i, 1) = Sheets(i).Name
.Cells(i, 2) = Sheets(i).[D6]
.Cells(i, 3) = Sheets(i).[F8]
.Cells(i, 4) = Sheets(i).[H4]
.Cells(i, 5) = Sheets(i).[F65536].End(xlUp).Value
Next i
End With
Set reC = Nothing
End Sub


ChrisV


"Const." a écrit dans le message de news:
42bfa15a$0$16066$
Re,

Si la position du total change en fonction du nombre de lignes du devis,
la colonne reste je suppose inchangée...
De quelle colonne s'agit-il ?


Effectivement, c'est la colonne F




Avatar
Const.
Re,

En supposant le total en Fxx soit la dernière cellule renseignée de la
colonne F...


Et en supposant que la cellule qui m'interesse ne soit pas la dernière
?? je suis dans le caca ??? :))

Ma solution de rentrer la valuer dans une variable n'est pas viable ??

Const.

1 2