Faire un tableau en partant de données dans la même cellule
3 réponses
andré
Bonjour,
J'ai en A5 le nom, en B5 le montant.
En A1 la cellule qui reçoit le nom, en B1la cellule du montant.
Je voudrais que le nom tapé en A1 se reporte en A5, que le second nom aille
en A6, etc
Idem pour que les valeurs mises en B1 se reporte en B5, que la seconde
valeur aille en B6, etc
Ceci en utilisant le lange de base excel2000 avec XP. Pas de macro
Si quelqu'un a une idée, merci.
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
Quetzalcoatl
Bonsoir,
La macro suivante, où l'entier i (resp. j) contient le nombre d'entrée dans la cellule A1 (resp. B1), également mémorisé sous le nom "A" (resp. "B"), est à placer comme code de Feuil1 :
Private Sub Worksheet_Change(ByVal Target As Range) Dim i, j As Integer Application.EnableEvents = False If Target.Address = [A1].Address Then i = Right(ActiveWorkbook.Names("A").Value, Len(ActiveWorkbook.Names("A").Value) - 1) Cells(i, Target.Column).Value = [A1].Value ActiveWorkbook.Names.Add Name:="A", RefersToR1C1:="=" & i + 1 End If If Target.Address = [B1].Address Then j = Right(ActiveWorkbook.Names("B").Value, Len(ActiveWorkbook.Names("B").Value) - 1) Cells(j, Target.Column).Value = [B1].Value ActiveWorkbook.Names.Add Name:="B", RefersToR1C1:="=" & j + 1 End If Application.EnableEvents = True End Sub
La macro suivante est à placer dans un module et à lancer une fois pour toutes pour initialiser "A" et "B". Sub INITIALISATION() ActiveWorkbook.Names.Add Name:="A", RefersToR1C1:="=5" ActiveWorkbook.Names.Add Name:="B", RefersToR1C1:="=5" End Sub
Si on veut : Outils > Options... > Modification > décocher : Déplacer la sélection après validation
------------
"andré" a écrit dans le message de news: ff321v$amn$
Bonjour,
J'ai en A5 le nom, en B5 le montant. En A1 la cellule qui reçoit le nom, en B1la cellule du montant.
Je voudrais que le nom tapé en A1 se reporte en A5, que le second nom aille en A6, etc Idem pour que les valeurs mises en B1 se reporte en B5, que la seconde valeur aille en B6, etc
Ceci en utilisant le lange de base excel2000 avec XP. Pas de macro Si quelqu'un a une idée, merci.
Bonsoir,
La macro suivante, où l'entier i (resp. j) contient le nombre d'entrée dans la cellule A1 (resp. B1), également mémorisé sous le nom
"A" (resp. "B"), est à placer comme code de Feuil1 :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i, j As Integer
Application.EnableEvents = False
If Target.Address = [A1].Address Then
i = Right(ActiveWorkbook.Names("A").Value, Len(ActiveWorkbook.Names("A").Value) - 1)
Cells(i, Target.Column).Value = [A1].Value
ActiveWorkbook.Names.Add Name:="A", RefersToR1C1:="=" & i + 1
End If
If Target.Address = [B1].Address Then
j = Right(ActiveWorkbook.Names("B").Value, Len(ActiveWorkbook.Names("B").Value) - 1)
Cells(j, Target.Column).Value = [B1].Value
ActiveWorkbook.Names.Add Name:="B", RefersToR1C1:="=" & j + 1
End If
Application.EnableEvents = True
End Sub
La macro suivante est à placer dans un module et à lancer une fois pour toutes pour initialiser "A" et "B".
Sub INITIALISATION()
ActiveWorkbook.Names.Add Name:="A", RefersToR1C1:="=5"
ActiveWorkbook.Names.Add Name:="B", RefersToR1C1:="=5"
End Sub
Si on veut :
Outils > Options... > Modification > décocher : Déplacer la sélection après validation
------------
"andré" <aecr@tiscali.fr> a écrit dans le message de news: ff321v$amn$1@news.tiscali.fr...
Bonjour,
J'ai en A5 le nom, en B5 le montant.
En A1 la cellule qui reçoit le nom, en B1la cellule du montant.
Je voudrais que le nom tapé en A1 se reporte en A5, que le second nom aille en A6, etc
Idem pour que les valeurs mises en B1 se reporte en B5, que la seconde valeur aille en B6, etc
Ceci en utilisant le lange de base excel2000 avec XP. Pas de macro
Si quelqu'un a une idée, merci.
La macro suivante, où l'entier i (resp. j) contient le nombre d'entrée dans la cellule A1 (resp. B1), également mémorisé sous le nom "A" (resp. "B"), est à placer comme code de Feuil1 :
Private Sub Worksheet_Change(ByVal Target As Range) Dim i, j As Integer Application.EnableEvents = False If Target.Address = [A1].Address Then i = Right(ActiveWorkbook.Names("A").Value, Len(ActiveWorkbook.Names("A").Value) - 1) Cells(i, Target.Column).Value = [A1].Value ActiveWorkbook.Names.Add Name:="A", RefersToR1C1:="=" & i + 1 End If If Target.Address = [B1].Address Then j = Right(ActiveWorkbook.Names("B").Value, Len(ActiveWorkbook.Names("B").Value) - 1) Cells(j, Target.Column).Value = [B1].Value ActiveWorkbook.Names.Add Name:="B", RefersToR1C1:="=" & j + 1 End If Application.EnableEvents = True End Sub
La macro suivante est à placer dans un module et à lancer une fois pour toutes pour initialiser "A" et "B". Sub INITIALISATION() ActiveWorkbook.Names.Add Name:="A", RefersToR1C1:="=5" ActiveWorkbook.Names.Add Name:="B", RefersToR1C1:="=5" End Sub
Si on veut : Outils > Options... > Modification > décocher : Déplacer la sélection après validation
------------
"andré" a écrit dans le message de news: ff321v$amn$
Bonjour,
J'ai en A5 le nom, en B5 le montant. En A1 la cellule qui reçoit le nom, en B1la cellule du montant.
Je voudrais que le nom tapé en A1 se reporte en A5, que le second nom aille en A6, etc Idem pour que les valeurs mises en B1 se reporte en B5, que la seconde valeur aille en B6, etc
Ceci en utilisant le lange de base excel2000 avec XP. Pas de macro Si quelqu'un a une idée, merci.
lSteph
Bonjour,
C'est bien le "pas de macro" qui m'arrêtait!
La macro qui t'a été proposée me semblait faire ce que j'avais compris de ta demande initiale
Est-il possible de le faire avec SI selon toute probabilité de ce qui serait envisageable de prêter au
sens de ta demande qui me semble réalisable avec un Si... Si c'était cela c'est beaucoup plus simple un signe égal suffit:
en a5 tu écris = A1 et quand tu entres quelque chose en A1, cela s'écrit aussi en A5.
... que le second nom aille en A6, etc
Plus qu'à recopier cette formule en b5 puis vers le bas ainsi celle qui vient en second (A2) ira en A6 et B2 en B6
Cordialement.
-- lSteph
On 19 oct, 17:00, "andré" wrote:
Merci pour la réponse, mais je ne voudrais pas utiliser le VBA. Est-il possible de le faire avec SI
Bonjour,
C'est bien le "pas de macro" qui m'arrêtait!
La macro qui t'a été proposée me semblait faire ce que j'avais compris
de ta demande initiale
Est-il possible de le faire avec SI
selon toute probabilité de ce qui serait envisageable de prêter au
sens de ta demande qui me semble réalisable avec un Si...
Si c'était cela c'est beaucoup plus simple un signe égal suffit:
en a5 tu écris = A1
et quand tu entres quelque chose en A1, cela s'écrit aussi en A5.
... que le second nom aille
en A6, etc
Plus qu'à recopier cette formule en b5
puis vers le bas
ainsi celle qui vient en second (A2) ira en A6 et B2 en B6
Cordialement.
--
lSteph
On 19 oct, 17:00, "andré" <a...@tiscali.fr> wrote:
Merci pour la réponse, mais je ne voudrais pas utiliser le VBA.
Est-il possible de le faire avec SI