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

AFFICHAGE AUTOMATIQUE DES DONNEES (SUITE)

5 réponses
Avatar
elodie005
Bonsoir, j'esp=E8re que vous pourrez de nouveaux m'aider car j'ai une
nouvelle probl=E9matique.

Voil=E0 je voudrais pouvoir trouver le moyen de faire la chose
suivante :

Dans la feuille 1, mes donn=E9es sont pr=E9sent=E9s de la fa=E7on suivante =
:

A B
C ..........................U
Objet Constituants Prix
Voiture Volant 45
Pneus 100
Carrosserie 1500
Lampe Ampoule 1
Fil =E9l=E9ctique 2

Je voudrais =E0 partir de la feuille 2, que quand j'indique en colonne
A
un Objet, les autres colonnes se remplissent automatiquement avec les
constituants qui s'y rapportent de la fa=E7on suivante :

En B les donn=E9es de la colonne B de la feuille 1 en rapport avec
l'=E9l=E9ment tap=E9 (si je tape lampe ampoule et fil =E9lectrique s'affich=
e
en B)
En C les donn=E9es de la colonne C de la feuille 1 en rapport avec
l'=E9l=E9ment tap=E9
Rien dans la colone D
En E les donn=E9es de la colonne U en rapport avec l'=E9l=E9ment tap=E9


Pouvez-vous m'aider avec une macro que je puisse adapter =E0 des cas
sp=E9cifiques
comme celui-l=E0??

Merci d'avance pour votre aide

5 réponses

Avatar
Caetera
"elodie005" a écrit dans le message de news:

Voilà je voudrais pouvoir trouver le moyen de faire la chose
suivante :



*************

http://www.cijoint.fr/cjlink.php?file=cj201004/cijwjbUE3M.xls

Etc
Avatar
elodie005
Merci beaucoup pour cette macro, toutefois je voudrais que ca marche
pas uniquement dans la cellule A1 mais en tappant n'importe où dans la
colonne A (en tapant le moment et sans liste déroulante).

De plus en changeant le nom de la feuille quand je change dans le code
le résultats par le nom de la feuille, ça ne marche plus.

Pouvez-vous m'aider à nouveau?

Merci d'avance




On 14 avr, 18:23, "Caetera" <EtiennePloufCahé@wanadoo.fr> wrote:
"elodie005" a écrit dans le message de news:


>Voilà je voudrais pouvoir trouver le moyen de faire la chose
>suivante :

*************

http://www.cijoint.fr/cjlink.php?file=cj201004/cijwjbUE3M.xls

Etc
Avatar
michdenis
Tu as déjà posé cette question et je t'ai répondu ceci :


Suppose que ta feuille d'origine où sont tes données s'appelle "sheet2"
et qu'à chaque fois que tu entres une donnée sur la feuille X, tu veux
que s'inscrive automatiquement le contenu de la colonne B et C en
rapport avec l'expression tapée en colonne A.

Dans le module feuille où doivent s'afficher automatiquement les
données,
copie cette procédure et n'oublie pas d'adapter le nom de la feuille des
données d'origine dans la procédure.

'-----------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rg As Range, Ligne As Variant, DerLig As Long
Dim Nb As Long, B As Long, Sh As Worksheet

''Adapte le nom de la feuille d'origine des données
Set Sh = Worksheets("Sheet2")

Set Rg = Intersect(Target, Range("A:A"))

If Not Rg Is Nothing Then
If Rg.Cells.Count > 1 Then Exit Sub
Nb = Range("A65536").End(xlUp).Row
Ligne = Application.Match(Target, Sh.Range("A:A"), 0)
If IsNumeric(Ligne) Then
DerLig = Ligne + 1
Do While Range("A" & DerLig) = ""
DerLig = DerLig + 1
If DerLig > Nb Then Exit Do
Loop

With Sh
Application.EnableEvents = False
.Range(.Cells(Ligne, 1), .Cells(DerLig, 1)). _
Offset(, 1).Resize(, 20).Copy Target.Offset(, 1)
Application.EnableEvents = True
End With
Else
MsgBox "Expression inexistante dans la feuille source des données."
End If
End If
End Sub
'-----------------------------------------------




"elodie005" a écrit dans le message de groupe de discussion :

Merci beaucoup pour cette macro, toutefois je voudrais que ca marche
pas uniquement dans la cellule A1 mais en tappant n'importe où dans la
colonne A (en tapant le moment et sans liste déroulante).

De plus en changeant le nom de la feuille quand je change dans le code
le résultats par le nom de la feuille, ça ne marche plus.

Pouvez-vous m'aider à nouveau?

Merci d'avance




On 14 avr, 18:23, "Caetera" <EtiennePloufCahé@wanadoo.fr> wrote:
"elodie005" a écrit dans le message de news:


>Voilà je voudrais pouvoir trouver le moyen de faire la chose
>suivante :

*************

http://www.cijoint.fr/cjlink.php?file=cj201004/cijwjbUE3M.xls

Etc
Avatar
elodie005
Merci beauvoup pour m'avoir de nouveau répondu, c'est presque ça mais
en fait je voudrais que la colonne U de la feuille 1 se retrouve dans
la colonne E (et non U) de la feuille 2 et je ne veux pas que les
données des autres colonnes que B C U se retrouve dans la feuille 2

Pensez-vous que c'est faisable?

Encore merci pour votre aide


On 15 avr, 13:05, "michdenis" wrote:
Tu as déjà posé cette question et je t'ai répondu ceci :

Suppose que ta feuille d'origine où sont tes données s'appelle "sheet 2"
   et qu'à chaque fois que tu entres une donnée sur la feuille X, tu veux
   que s'inscrive automatiquement le contenu de la colonne B et C en
   rapport avec l'expression tapée en colonne A.

   Dans le module feuille où doivent s'afficher automatiquement les
   données,
   copie cette procédure et n'oublie pas d'adapter le nom de la feu ille des
   données d'origine dans la procédure.

   '-----------------------------------------------
   Private Sub Worksheet_Change(ByVal Target As Range)
   Dim Rg As Range, Ligne As Variant, DerLig As Long
   Dim Nb As Long, B As Long, Sh As Worksheet

   ''Adapte le nom de la feuille d'origine des données
   Set Sh = Worksheets("Sheet2")

   Set Rg = Intersect(Target, Range("A:A"))

   If Not Rg Is Nothing Then
   If Rg.Cells.Count > 1 Then Exit Sub
   Nb = Range("A65536").End(xlUp).Row
   Ligne = Application.Match(Target, Sh.Range("A:A"), 0)
   If IsNumeric(Ligne) Then
   DerLig = Ligne + 1
   Do While Range("A" & DerLig) = ""
   DerLig = DerLig + 1
   If DerLig > Nb Then Exit Do
   Loop

   With Sh
   Application.EnableEvents = False
   .Range(.Cells(Ligne, 1), .Cells(DerLig, 1)). _
   Offset(, 1).Resize(, 20).Copy Target.Offset(, 1)
   Application.EnableEvents = True
   End With
   Else
   MsgBox "Expression inexistante dans la feuille source des donnée s."
   End If
   End If
   End Sub
   '-----------------------------------------------

"elodie005" a écrit dans le message de groupe de discussion :

Merci beaucoup pour cette macro, toutefois je voudrais que ca marche
pas uniquement dans la cellule A1 mais en tappant n'importe où dans la
colonne A (en tapant le moment et sans liste déroulante).

De plus en changeant le nom de la feuille quand je change dans le code
le résultats par le nom de la feuille, ça ne marche plus.

Pouvez-vous m'aider à nouveau?

Merci d'avance

On 14 avr, 18:23, "Caetera" <EtiennePloufCahé@wanadoo.fr> wrote:



> "elodie005" a écrit dans le message de news:
>

> >Voilà je voudrais pouvoir trouver le moyen de faire la chose
> >suivante :

> *************

>http://www.cijoint.fr/cjlink.php?file=cj201004/cijwjbUE3M.xls

> Etc- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -
Avatar
michdenis
Énumère ce que tu veux retrouver :

la colonne U de la feuille 1 se retrouve dans la colonne E
et sois spécifique pour les autres...



"elodie005" a écrit dans le message de groupe de discussion :

Merci beauvoup pour m'avoir de nouveau répondu, c'est presque ça mais
en fait je voudrais que la colonne U de la feuille 1 se retrouve dans
la colonne E (et non U) de la feuille 2 et je ne veux pas que les
données des autres colonnes que B C U se retrouve dans la feuille 2

Pensez-vous que c'est faisable?

Encore merci pour votre aide


On 15 avr, 13:05, "michdenis" wrote:
Tu as déjà posé cette question et je t'ai répondu ceci :

Suppose que ta feuille d'origine où sont tes données s'appelle "sheet2"
et qu'à chaque fois que tu entres une donnée sur la feuille X, tu veux
que s'inscrive automatiquement le contenu de la colonne B et C en
rapport avec l'expression tapée en colonne A.

Dans le module feuille où doivent s'afficher automatiquement les
données,
copie cette procédure et n'oublie pas d'adapter le nom de la feuille des
données d'origine dans la procédure.

'-----------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rg As Range, Ligne As Variant, DerLig As Long
Dim Nb As Long, B As Long, Sh As Worksheet

''Adapte le nom de la feuille d'origine des données
Set Sh = Worksheets("Sheet2")

Set Rg = Intersect(Target, Range("A:A"))

If Not Rg Is Nothing Then
If Rg.Cells.Count > 1 Then Exit Sub
Nb = Range("A65536").End(xlUp).Row
Ligne = Application.Match(Target, Sh.Range("A:A"), 0)
If IsNumeric(Ligne) Then
DerLig = Ligne + 1
Do While Range("A" & DerLig) = ""
DerLig = DerLig + 1
If DerLig > Nb Then Exit Do
Loop

With Sh
Application.EnableEvents = False
.Range(.Cells(Ligne, 1), .Cells(DerLig, 1)). _
Offset(, 1).Resize(, 20).Copy Target.Offset(, 1)
Application.EnableEvents = True
End With
Else
MsgBox "Expression inexistante dans la feuille source des données."
End If
End If
End Sub
'-----------------------------------------------

"elodie005" a écrit dans le message de groupe de discussion :

Merci beaucoup pour cette macro, toutefois je voudrais que ca marche
pas uniquement dans la cellule A1 mais en tappant n'importe où dans la
colonne A (en tapant le moment et sans liste déroulante).

De plus en changeant le nom de la feuille quand je change dans le code
le résultats par le nom de la feuille, ça ne marche plus.

Pouvez-vous m'aider à nouveau?

Merci d'avance

On 14 avr, 18:23, "Caetera" <EtiennePloufCahé@wanadoo.fr> wrote:



> "elodie005" a écrit dans le message de news:
>

> >Voilà je voudrais pouvoir trouver le moyen de faire la chose
> >suivante :

> *************

>http://www.cijoint.fr/cjlink.php?file=cj201004/cijwjbUE3M.xls

> Etc- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -