[excel 2003] mise à jour lignes et formules

jérém 56990 -  
 jeremy59660 -
Bonjour,

Le titre n'étant pas très évocateur, je vais essayer de m'expliquer un peu mieux.
En gros j'ai un classeur excel avec 2 onglets A et B. Un avec des listes qui me servent de base de données(onglet A pour les tableaux de l'autre onglet.

Je souhaite que lorsque je vais modifier le contenu (texte) d'une des cellules dans l'onglet A, ce texte se modifie aussi dans le tableau de l'onglet B. De plus, il faudrait que l'ajout d'une valeur dans le tableau de l'onglet A ajoute une ligne avec cette valeur dans le tableau de l'onglet B.

Voila un des tableaux de mon onglet A

colonne A

Je mange des chips
Je mange des bananes
Je mange des tomates
Je mange des choux
Je mange des patates

Dans l'onglet B ca donne

Colonne B Colonne C Colonne D

Je mange des chips Formule Formule
Je mange des bananes Formule Formule
Je mange des tomates Formule Formule
Je mange des choux Formule Formule
Je mange des patates Formule Formule

les formules sont surtout des NB SI et des SOMME.SI.

ce que je souhaite c'est que si j'ajoute je mange des cornichons dans le tableau de l'onglet A, celui-ci s'ajoute dans le tableau de l'onglet B, et que les fomules glissent automatiquement.( si ça pouait de mettre automatiquement dans l'ordre alphabétique ça serait vraiment sympa!!!!!)

Si quelqu'un peut m'éclairer..Merci par avance

Cordialement,

Jérémy
A voir également:

7 réponses

pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 768
 
Bonjour,
Alors pas si évident que cela à réaliser.
Dans l'onglet B tu peux mettre ce genre de formule en Colonne A :
=SI(Feuil1!A1<>"";Feuil1!A1;"") et tu l'étires vers le bas.
En colonne B :
=SI(A1<>"";mets ici ta formule;"")
pareil en C.
Par contre si tu veux un tri par ordre alpha automatique, il faudra passer par une macro...
0
jérém 56990
 
Dans un premier temps, un grand merci pour la réactivité! on voit cela pour très peu de forum!!!

La formule que tu me donne marche dans le sens où les lignes de mon tableau de l'onglet B prennent bien les valeurs texte de l'onglet A, mais le problème est que lorsque j'insère une ligne dans le tableau de l'onglet A avec une nouvelle valeur (je mange des cornichons), celle-ci ne sinsère pas dans le tableau de l'onglet B. :s

Encore merci pour la réponse pijaku.

Cordialement,

Jérémy
0
jérém 56990
 
Si quelqu'un connaît la petite chose à ajouter dans la formule pour que la ligne s'insère aussi dans mon onglet B, je suis preneur!!!(si nous pouvions éviter les macros...)

Pour les formles autrement elles marchent toutes!!!! Il ne manque plus que l'insertion et c'est parfait.

Cordialement,

Jérémy
0
pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 768
 
Re
A mon avis impossible sans macro...
Le fait d'insérer une ligne au milieu de ton tableau A fait que la formule dans le tableaui B change... Donc VBA. remarque que la solution VBA ne doit pas être compliquée et doit s'appliquer facilement.
A toi de voir.
0
jerem > pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention  
 
va pour du vba pas le choix ... et m****..

Pour ceux que ça interresse la VBA c'est

Sub Masquer_Lignes_Vides()

(trier section par ordre alpha)
Range("A6:A31").Select
Selection.Sort Key1:=Range("A6"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
(trier section par ordre alpha)

(supprime les lignes vides)
Application.ScreenUpdating = False

Sheets("recap AGENCE LORRAINE").Select
Range("B6:B26").Select
For Each Cell In Selection
Cpt = 0
For i = 0 To 11
If Cell.Offset(0, i) <> "" Then
Cpt = Cpt + 1
End If
Next
If Cpt = 0 Then
Cell.EntireRow.Hidden = True
Else
Cell.EntireRow.Hidden = False
End If
Next
Application.ScreenUpdating = True
(supprime les lignes vides)

Cordialement,

Jérémy
0
jerem
 
Nouvelle question, je veux trier par ordre alphabétique plusieur plages de cellules différentes via une macro. Pour une plage c'est ça :

Range("A37:A57").Select
Selection.Sort Key2:=Range("A37"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal

Mias des que j'utilise union, il me dit qu'il y a erreur sur la suite.
Quelqu'un peut m'aider?

Cordialement,

Jérémy
0
pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 768
 
Salut,
union?????
Je ne vois pas du tout de quoi vous parlez?
0
jerem
 
logiquement union sert à selectionner plusieur plage de données, ce quui m'aurait arranger , mais dans ce cas ça ne marche pas et je ne sais pas pourquoi donc si vous avez un autre moyen ...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 768
 
Vous souhaitez sélectionner par exemple A37:A57 & G12:G68 & L192:L243 et trier le tout?
Si oui Excel ne peux pas trier sur des sélections multiples...
0
jeremy
 
nn pas trier le tout, mais trier chaque plage indépendemment et ce dans une seule macro..

Gbinforme m'a donné la solution !!

La solution c'est

Range("A6:A31").Sort Key1:=Range("A6"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Range("A36:A57").Sort Key1:=Range("A36"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Range("A64:A77").Sort Key1:=Range("A64"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Range("A82:A115").Sort Key1:=Range("A82"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

Je te remercie pour ton aide Pijaku!!!!

Bon après-midi

Cordialement
0
pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 768
 
De rien j'ai pas fait grand choz...
pluka mettre en "résolu"
0
jeremy59660
 
Impossible de le mettre en résolu, pb d'identification. Si vous pouvez, mettez le résolu pour moi.

Cordialement,

Jérémy LAMY
0