Création de boucle
Pouims
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
Iama Messages postés 319 Date d'inscription Statut Membre Dernière intervention -
Iama Messages postés 319 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis toute nouvelle dans ce monde magique de la programmation. Après avoir lu "VBA pour les nuls" je souhaite me lacer dans un petit programme... Mais bien plus difficile que prévu!!
Voici mon problème (je vais essayer d'être claire mais c'est pas mon fort!):
J'ai un tableau à quatre colonnes. Je souhaite fusionner les cellules:
*de A si elles sont identiques
*de B si elles sont identiques et que celles de A aussi (donc fusionnées)
*de C si elles sont identiques et que celles de A et B aussi (donc fusionnées)
*de D si elles sont identiques et que celles de A , B et C aussi (donc fusionnées)
Pour le moment j'arrive à comparer deux cellules définies et à les fusionner mais je n'arrive pas à le faire en boucle jusqu'à la fin de mon tableau...
Pouvez vous me donner quelques pistes?
Merci
Je suis toute nouvelle dans ce monde magique de la programmation. Après avoir lu "VBA pour les nuls" je souhaite me lacer dans un petit programme... Mais bien plus difficile que prévu!!
Voici mon problème (je vais essayer d'être claire mais c'est pas mon fort!):
J'ai un tableau à quatre colonnes. Je souhaite fusionner les cellules:
*de A si elles sont identiques
*de B si elles sont identiques et que celles de A aussi (donc fusionnées)
*de C si elles sont identiques et que celles de A et B aussi (donc fusionnées)
*de D si elles sont identiques et que celles de A , B et C aussi (donc fusionnées)
Pour le moment j'arrive à comparer deux cellules définies et à les fusionner mais je n'arrive pas à le faire en boucle jusqu'à la fin de mon tableau...
Pouvez vous me donner quelques pistes?
Merci
A voir également:
- Création de boucle
- Creation de compte google - Guide
- Creation de site web - Guide
- Creation compte gmail - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
- Creation compte vinted - Guide
3 réponses
Bonjour Pouims
Peux-tu nous poster ton code, c'est plus simple de voir ou tu bloque?
PS: Quand tu dis " fusionner les cellules" et si tu parle du format des cellules: C'est pour m'a part un formatage que j'évite, car je trouve qu'il génère trop de problèmes. je lui préfère " centrer sur plusieurs colonnes
cordialement
Peux-tu nous poster ton code, c'est plus simple de voir ou tu bloque?
PS: Quand tu dis " fusionner les cellules" et si tu parle du format des cellules: C'est pour m'a part un formatage que j'évite, car je trouve qu'il génère trop de problèmes. je lui préfère " centrer sur plusieurs colonnes
cordialement
Bonjour Iama,
Voici mon "petit" code... il ne compare que deux cellules d'une seule colonne et les fusionne si besoin.
Quand je parle de fusionner c'est pour rendre la lecture du document plus facile, la fusion se fait par colonne et non par ligne donc "centrer sur plusieurs colonnes ne fonctionne pas" et je ne sais pas faire autrement que fusionner sur les colonnes.
merci
Voici mon "petit" code... il ne compare que deux cellules d'une seule colonne et les fusionne si besoin.
Sub comparaison()
Range("D2").Select
Var = Worksheets("DU par Unité").Range("D2").Value
Var1 = ActiveCell.Offset(1, 0).Value
If Var = Var1 Then Range("D2", ActiveCell.Offset(1, 0)).merge Else: MsgBox "Pas Egal"
End Sub
Quand je parle de fusionner c'est pour rendre la lecture du document plus facile, la fusion se fait par colonne et non par ligne donc "centrer sur plusieurs colonnes ne fonctionne pas" et je ne sais pas faire autrement que fusionner sur les colonnes.
merci
Bonjour Pouims
Voici un code, il ne traite qu'une colonne.
tu pourras voir un exemple de boucle.
En faire une autre boucle pour traiter plusieurs colonne.
Mais les fusions ne se font que sur les lignes.
cordialement
Si tu as des questions..
Voici un code, il ne traite qu'une colonne.
tu pourras voir un exemple de boucle.
En faire une autre boucle pour traiter plusieurs colonne.
Mais les fusions ne se font que sur les lignes.
Sub comparaisonb() Dim i As Long, y As Long Dim coL As Integer 'N° de colonne Dim derL As Long 'derniére ligne Dim vaR As Variant coL = 4 Worksheets("DU par Unité").Activate derL = Rows.Count derL = Cells(derL, coL).End(xlUp).Row 'derniére ligne utilisée For i = 1 To derL vaR = Cells(i, coL).Value If vaR = Empty = False Then If vaR = Cells(i, coL).Offset(1, 0).Value Then For y = i To derL Cells(y, coL).Select ' test W If vaR <> Cells(y, coL).Value Then Exit For Next y 'Range(Cells(i + 1, coL), Cells(i + 1, coL).Offset(y - i - 2, 0)).Select Range(Cells(i + 1, coL), Cells(i + 1, coL).Offset(y - i - 2, 0)) = Empty With Range(Cells(i, coL), Cells(i + 1, coL).Offset(y - i - 2, 0)) .Merge .VerticalAlignment = xlCenter End With i = y - 1 End If End If Next i End Sub
cordialement
Si tu as des questions..
Bonjour,
Lorsque vous placez du code sur notre forum, merci d'utiliser les balises code à votre disposition.
Le mode d'emploi (au cas ou) est ICI.
Cordialement,
Pijaku
Lorsque vous placez du code sur notre forum, merci d'utiliser les balises code à votre disposition.
Le mode d'emploi (au cas ou) est ICI.
Cordialement,
Pijaku
Oui, merci.
A savoir également : l'utilisation de la balise <code + langage> comporte actuellement un bug. Les utilisateurs de IE8 ne voient que la première ligne du code. Si tu rencontres ce cas, n'hésite pas à ajouter un commentaire avec ton code entre balises <code> simples.
Bonne journée et bonne continuation
A savoir également : l'utilisation de la balise <code + langage> comporte actuellement un bug. Les utilisateurs de IE8 ne voient que la première ligne du code. Si tu rencontres ce cas, n'hésite pas à ajouter un commentaire avec ton code entre balises <code> simples.
Bonne journée et bonne continuation