Un peut d'aide ne serait pas de refus

Nann

XLDnaute Nouveau
Bonjour, tout le monde,
Merci a Porcinet82 et à charly2 pour leur info que ma permit de modifier mon vb actuel avec leur base, pour mon précedent post.

voici donc le vb actuel:

Sub Modif_format1()
Dim i As Integer
'on fige l'écran
Application.ScreenUpdating = False
'Pour de la ligne 3000 à la ligne 18 un remontant de une ligne
For i = 3000 To 18 Step -1
'Faire tant que : le contenu de la cellule de la colonne E de la ligne actuelle
'et celle du dessus sont identique Et que le contenu de la cellule de la colonne C
'et celle du dessus sont identique
Do While Cells(i, 5).Value = Cells(i - 1, 5).Value And Cells(i, 3) = Cells(i - 1, 3)
'on concatene la cellule actuelle de la colonne B avec celle de la ligne du dessus
'avec entre les deux : ", "
Cells(i, 2) = Cells(i - 1, 2) & ", " & Cells(i, 2)
'puis on efface la ligne du dessus
Rows(i - 1).Delete
'Et on recommance tant que la condition est d'actualitée
Loop
Next i
'on défige l'écran
Application.ScreenUpdating = True
End Sub

Mais je voudrais modifier la macro pour que dès le lancement de cell-ci, elle me demande les colonnes pour les conditions ( du genre je clic sur les colonnes ) faire de meme pour la colonne ou elle concatène, puis aussi pour la ligne de départ, et que la macro cherche d'elle meme la dernière ligne ou la première ligne vide.

Merci d'avance, car je trouve que c'est méga hard pour moi, mais bon si quelqu'un connait comment faire, et bien je lui tire mon chapeau.
 
Dernière édition:

Nann

XLDnaute Nouveau
Re : Un peut d'aide ne serait pas de refus

Salut Porcinet82 et le fil,

La fonction obtenue fonctionne comme je l'aurais souhaité, mais il y a un hic,
si j'insère par exemple une colonne a droite de la colonne B donc b=>C et donc la colonne C=>D et et la colonne E =>F ( => : devient), la macro plante.
car en fait mais données ne seront pas souvent dans les meme colonne ( les colonne de condition pouront se trouver une en A et l'autres en B et la colonne de concatenation pourra etre en J ou dans d'autres configuration

Mais dans cette position, cela fonctionne.

Il est vrai que si ça pouvait fonctionner dans n'importe quel position des colonnes cela me conviendrait parfaitement. Mai sil ne faut pas etre probablement trop chiant, oui disons bien ce mots

Merci. Je vais tenter de bidouiller ton vb pour voir si j'arrives à m'aider un peut plus, mais si tu as une solution ou quelqu'un d'autres du fil...

Merci encore.
 

porcinet82

XLDnaute Barbatruc
Re : Un peut d'aide ne serait pas de refus

Bonsoir,

J'ai oublier une petite modif, si tu remplaces la ligne suivante For i = Range(E65536).End(xlUp).Row To Range(Range(E65536).End(xlUp).Address(0, 0)).End(xlUp).Row + 1 Step -1par celle-ci For i = Range(col_cond_2 & "65536").End(xlUp).Row To Range(Range(col_cond_2 & "65536").End(xlUp).Address(0, 0)).End(xlUp).Row + 1 Step -1 ca devrait fontionner.

Tiens moi au courant,

@+
 

Nann

XLDnaute Nouveau
Re : Un peut d'aide ne serait pas de refus

Salut Porcinet82 et le fil,

Super, ca fonctionne super bien.
Mais j'ai un autres souci
Ce coup ci, c'est pas avec la macro, mais avec la mise en page.
Lorsque je lance la macro, en ligne 21 dans la case de la colonne B,
lorsque j'élargis la colonne, a sa dernière ligne, elle ne commence pas centré et une parti est masqué
Ci-oint le lien pour le fichier avec la macro ou j'ai effectué la modif que tu m'as fourni, il suffit de la lancer

http://cjoint.com/?hsngP0T2rj

et de regarder la ligne 21 mais ça se reproduit sur d'autres lignes
J'ai pourtant fait La selection de la colonne B puis Format->Cellule
dans l'onglet nombre j'ai mis standard
dans l'onglet alignement j'ai validé centré en horizontal et vertical et j'ai aussi validé le renvoit à la ligne automatique.

Est-ce un bug de excel???

J'aurais trouvé une info disant que le contenue d'une cellule ne peut contenir plus de 1024 caractères, un "bridage" de excel, comment contourner ce problème


Merci d'avance à la personne qui pourra m'aider ce se problème, à titre d'info ce n'est pas la première fois que ça m'arrive.

Nann
 
Dernière édition:

porcinet82

XLDnaute Barbatruc
Re : Un peut d'aide ne serait pas de refus

Salut Nan,

Pas sur d'avoir compris ton problème, mais essaie de modifier la fin du code de la manière suivante et tiens moi au courant.

PHP:
'du code
Next i
Application.ScreenUpdating = True
Cells.Select
Cells.EntireColumn.AutoFit
Cells.EntireRow.AutoFit
Exit Sub
fin:
Application.ScreenUpdating = True
MsgBox "Vous n'avez pas rentré une données valide pour l'une des colonnes"
Modif_format
End Sub

@+
 

Nann

XLDnaute Nouveau
Re : Un peut d'aide ne serait pas de refus

Salut Porcinet82 et le fil,

pas eu le temps de tester encore, mais c'est le problème énoncé dans mon nouveau post ou Tibo à donner une raison sur les 1024 caractères.

Dès le teste fait je te tient au courant.

Nann
 

porcinet82

XLDnaute Barbatruc
Re : Un peut d'aide ne serait pas de refus

Salut Nann, Tibo,

Le code que je te propose dans ce fil ne permet que d'ajuster la hauteur des lignes et des colonnes selon leu contenu.
Mais en groupant le 1er code, celui-ci et celui proposé dans l'autre fil tu devrais arriver a faire un truc pas trop mal.

Tiens moi au courant,

@+
 

Discussions similaires

Statistiques des forums

Discussions
312 492
Messages
2 088 912
Membres
103 983
dernier inscrit
AlbertCouillard