OVH Cloud OVH Cloud

Formule

28 réponses
Avatar
enjoY02
Bonjour,

J'ai fais une extraction de données (client).
Les infos (compte,adresse) sont répartis sur 3 lignes par client ainsi de suite.
La formule =(&" "&) me permet dans une cellule de regrouper ces lignes.

Comment répéter cette formule toutes les 3 lignes (si c'est possible) s'il vous plait ?

10 réponses

1 2 3
Avatar
isabelle
avec un Step 3 ca va plus vite et rien à effacer ;-0

isabelle

Le 2014-08-20 13:12, Jacquouille a écrit :
Salut Isabelle
J'ai pensé cela en vitesse, mais cela bloque sur l'effacement des 2 lignes....

Jacquouille
Avatar
enjoy02
Le mardi 19 Août 2014 à 16:12 par enjoY02 :
Bonjour,

J'ai fais une extraction de données (client).
Les infos (compte,adresse) sont répartis sur 3 lignes par client ainsi
de suite.
La formule =(&" "&) me permet dans une cellule de regrouper
ces lignes.

Comment répéter cette formule toutes les 3 lignes (si c'est
possible) s'il vous plait ?


Merci beaucoup isabelle !!! Quel gain de temps ^^

Une autre question qui n'a rien à voir avec la première. J'avais un fichier modèle avec suivi de données sous Excel 2003. Aujourd'hui, nous sommes passés sous Excel 2007 mais ce modèle ne fonctionne plus, A chaque ouverture, impossible d'ouvrir l'assistant modèle. Avez-vous une solution svp ?
Avatar
isabelle
pourriez-vous mettre ce fichier sur cjoint.com
si les données de ce fichier ne sont pas confidentielle.

isabelle

Le 2014-08-21 04:04, enjoy02 a écrit :

Merci beaucoup isabelle !!! Quel gain de temps ^^

Une autre question qui n'a rien à voir avec la première. J'avais un fichier
modèle avec suivi de données sous Excel 2003. Aujourd'hui, nous sommes passés
sous Excel 2007 mais ce modèle ne fonctionne plus, A chaque ouverture,
impossible d'ouvrir l'assistant modèle. Avez-vous une solution svp ?

Avatar
enjoy02
Le mardi 19 Août 2014 à 16:12 par enjoY02 :
Bonjour,

J'ai fais une extraction de données (client).
Les infos (compte,adresse) sont répartis sur 3 lignes par client ainsi
de suite.
La formule =(&" "&) me permet dans une cellule de regrouper
ces lignes.

Comment répéter cette formule toutes les 3 lignes (si c'est
possible) s'il vous plait ?


comment te l'envoyer en privé ?
Avatar
Jacquouille
Bonjour
OUF, Enfin ....

En A1, le nom
En A2, le num de compte
En A3, la ville

En A4, le nom ......

Avec l'aide des Saints du forum (Isabelle, Jacky et Denis) et ceux du
paradis, cette macro remet tout sur une ligne en colonne B
------------------------------------
Sub Regrouper()

derL = [A65536].End(3).Row

For n = 1 To derL
Range("B" & n).Value = Range("A" & n) & " - " & Range("A" & n + 1) & " - " &
Range("A" & n + 2)
Next

For z = derL + 2 To 1 Step -3
Rows(z & ":" & z + 1).Delete
Next

End Sub
-------------------------------------
Chez moi, elle fonctionne. A tester sur un doc de test.

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"enjoy02" a écrit dans le message de groupe de discussion :


Le mardi 19 Août 2014 à 16:12 par enjoY02 :
Bonjour,

J'ai fais une extraction de données (client).
Les infos (compte,adresse) sont répartis sur 3 lignes par client ainsi
de suite.
La formule =(&" "&) me permet dans une cellule de regrouper
ces lignes.

Comment répéter cette formule toutes les 3 lignes (si c'est
possible) s'il vous plait ?


Merci beaucoup isabelle !!! Quel gain de temps ^^

Une autre question qui n'a rien à voir avec la première. J'avais un fichier
modèle avec suivi de données sous Excel 2003. Aujourd'hui, nous sommes
passés
sous Excel 2007 mais ce modèle ne fonctionne plus, A chaque ouverture,
impossible d'ouvrir l'assistant modèle. Avez-vous une solution svp ?


---
Ce courrier électronique ne contient aucun virus ou logiciel malveillant parce que la protection avast! Antivirus est active.
http://www.avast.com
Avatar
Jacky
Hello,

derL = [A65536].End(3).Row


A condition qu'il n'y a pas plus que 65536 lignes d'occupées
Sinon..
derL= Cells(Rows.Count, 1).End(xlUp).Row
Valable pour toutes versions xl

--
Salutations
JJ (Qui prend le risque de se répéter ;o))


"Jacquouille" a écrit dans le message de news: lt7nfi$m8k$
Bonjour
OUF, Enfin ....

En A1, le nom
En A2, le num de compte
En A3, la ville

En A4, le nom ......

Avec l'aide des Saints du forum (Isabelle, Jacky et Denis) et ceux du paradis, cette macro remet tout sur
une ligne en colonne B
------------------------------------
Sub Regrouper()

derL = [A65536].End(3).Row

For n = 1 To derL
Range("B" & n).Value = Range("A" & n) & " - " & Range("A" & n + 1) & " - " & Range("A" & n + 2)
Next

For z = derL + 2 To 1 Step -3
Rows(z & ":" & z + 1).Delete
Next

End Sub
-------------------------------------
Chez moi, elle fonctionne. A tester sur un doc de test.

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"enjoy02" a écrit dans le message de groupe de discussion :

Le mardi 19 Août 2014 à 16:12 par enjoY02 :
Bonjour,

J'ai fais une extraction de données (client).
Les infos (compte,adresse) sont répartis sur 3 lignes par client ainsi
de suite.
La formule =(&" "&) me permet dans une cellule de regrouper
ces lignes.

Comment répéter cette formule toutes les 3 lignes (si c'est
possible) s'il vous plait ?


Merci beaucoup isabelle !!! Quel gain de temps ^^

Une autre question qui n'a rien à voir avec la première. J'avais un fichier
modèle avec suivi de données sous Excel 2003. Aujourd'hui, nous sommes passés
sous Excel 2007 mais ce modèle ne fonctionne plus, A chaque ouverture,
impossible d'ouvrir l'assistant modèle. Avez-vous une solution svp ?

---
Ce courrier électronique ne contient aucun virus ou logiciel malveillant parce que la protection avast!
Antivirus est active.
http://www.avast.com

Avatar
MichD
Bonjour,

Si tu veux éviter les boucles et augmenter l'efficacité et la rapidité de la
procédure :

'-----------------------------------------------------
Sub Regrouper()
Dim Rg As Range
With Feuil1
Set Rg = .Range("A1:A" & .Range("A" & .Cells.Rows.Count).End(xlUp).Row)
End With
With Rg.Offset(, 1)
.Formula = "=" & Rg(1).Address(0, 0) & "-" & Rg(2).Address(0, 0) & "-" &
Rg(3).Address(0, 0) & ""
.Value = .Value
End With
With Rg.Offset(, 2)
.Formula = "=IF(MOD(ROW(A1),3)=1,1,"""")"
.Value = .Value
.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
.Columns(1).Value = ""
End With
End Sub
'-----------------------------------------------------
Avatar
Jacquouille
Merci Denis

J'ai sous les yeux la simple différence entre une brouette conduite par un
amateur et une F1 pilotée par un champion .....
Champion qui, parfois, va trop vite pour mon neurone. -))

Grand merci et bonne fin de soirée
Jacques.



Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
lt8852$kn2$

Bonjour,

Si tu veux éviter les boucles et augmenter l'efficacité et la rapidité de la
procédure :

'-----------------------------------------------------
Sub Regrouper()
Dim Rg As Range
With Feuil1
Set Rg = .Range("A1:A" & .Range("A" & .Cells.Rows.Count).End(xlUp).Row)
End With
With Rg.Offset(, 1)
.Formula = "=" & Rg(1).Address(0, 0) & "-" & Rg(2).Address(0, 0) & "-" &
Rg(3).Address(0, 0) & ""
.Value = .Value
End With
With Rg.Offset(, 2)
.Formula = "=IF(MOD(ROW(A1),3)=1,1,"""")"
.Value = .Value
.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
.Columns(1).Value = ""
End With
End Sub
'-----------------------------------------------------


---
Ce courrier électronique ne contient aucun virus ou logiciel malveillant parce que la protection avast! Antivirus est active.
http://www.avast.com
Avatar
MichD
J'ai omis que ce devrait probablement du texte que tu as dans la colonne A,
dans ce cas, la formule à utiliser devrait celle-là :

.Formula = "=" & Rg(1).Address(0, 0) & "&""-""&" & Rg(2).Address(0, 0) &
"&""-""&" & Rg(3).Address(0, 0) & ""
Avatar
Jacquouille
Cela me parait vraisemblable car le demandeur nous disait ceci:
... "J'ai fais une extraction de données (client).
Les infos (compte,adresse) sont répartis sur 3 lignes par client " ...

Finalement, et, comme toujours, on perd plus de temps à essayer de deviner
le cahier de charge du demandeur qu'à trouver une solution.
Heureusement que tu as un prix de gros pour tes boules de cristal... -))
Encore merci
Jacques



Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
lt8938$nfm$

J'ai omis que ce devrait probablement du texte que tu as dans la colonne A,
dans ce cas, la formule à utiliser devrait celle-là :

.Formula = "=" & Rg(1).Address(0, 0) & "&""-""&" & Rg(2).Address(0, 0) &
"&""-""&" & Rg(3).Address(0, 0) & ""


---
Ce courrier électronique ne contient aucun virus ou logiciel malveillant parce que la protection avast! Antivirus est active.
http://www.avast.com
1 2 3