Colonne

nikwik666

XLDnaute Occasionnel
Bjr,

Existe-t-il une fonction permettant d'ajouter une colonne A à une colonne b sans répété les meme mot existant dans chaque colonne ?

Merci de m'aider chui vrement bloqué sur ce truc :mad: :mad:
 

porcinet82

XLDnaute Barbatruc
Re : Colonne

Salut,

Perso, je ne comprends rien à ce que tu souhaites faire et je ne dois pas être le seul, sinon on t'aurai deja répondu.
Qu'entends-tu par "ajouter une colonne A à une colonne b" et par "sans répété les meme mot existant dans chaque colonne" ???

@+
 

nikwik666

XLDnaute Occasionnel
Re : Colonne

salut,

En fait je souhaite faire un mix des 2 colones :p
Par exemple dans ma colonne 1 j'ai : 1 2 4 5
Dans ma deuxieme colonne j'ai : 1 2 3 6
J'aimerais que dans ma 3eme colonne j obtienne : 1 2 3 4 5 6

Voili voilou jte file un bout de mon fichier pour + de comprehension :D

Merci de ton aide
 

Pièces jointes

  • help4.xls
    14 KB · Affichages: 36
  • help4.xls
    14 KB · Affichages: 36
  • help4.xls
    14 KB · Affichages: 38

nikwik666

XLDnaute Occasionnel
Re : Colonne

éclairé moi juste sur une methode svp :
Si dans une colone1 j'ai 1 2 4 6, Dans une autre colonne2 j'ai 3 et 5, comment pui je inserer dans la colonne1 mes 3 et 5 que j'ai dans ma colonne2 ?

Pfiou chui vrement bloqué, il n'existe pas une fonction pour faire ca ??
 

porcinet82

XLDnaute Barbatruc
Re : Colonne

re,

Un bout de code parmi d'autre solution :
Code:
Sub test()
Dim plage As Range, i%
Set plage = Range("A1:B" & Range("B65536").End(xlUp).Row)
For i = plage.Rows.Count To 1 Step -1
    For j = 1 To 2
        If Application.CountIf(plage, plage(i, j)) > 1 Then
            Cells(i, j).Delete Shift:=xlUp
        End If
    Next j
Next i
Range("B1:B" & Range("B65536").End(xlUp).Row).Cut
Range("A" & Range("A65536").End(xlUp).Row + 1).Select
ActiveSheet.Paste
End Sub

@+

Edition : Je viens de voir que ce n'est pas tout a fait ce que tu souhaites, mais peut etre que ca peut convenir quand même, dis moi ce que tu en penses
 

porcinet82

XLDnaute Barbatruc
Re : Colonne

re,

Excuse... Tu fais Alt+F11 (ou click droit sur l'onglet de la feuille sur laquelle tu travails et visualiser le code) et tu copies le code dans le module de la feuille sur laquelle tu travails. Ensuite pour l'executer, tu fais F5 ou tu click sur la Executer (petite fleche verte sous Format).
Si tu dois executer la macro assez souvent, tu peux mettre un bouton et copier/coller le code à l'intérieur.

@+
 

porcinet82

XLDnaute Barbatruc
Re : Colonne

re,

Voici le code avec quelques explications (pour le lire plus facilement, colle ds vba sous excel) :
Code:
Sub test()
Dim plage As Range, i%
'declaration des variables: plage en Range et i en integer
Set plage = Range("A1:B" & Range("B65536").End(xlUp).Row)
'la "plage de cellule" plage prend la plage allant de A1 à la dernière cellule non vide de la colonne B en partant du bas
For i = plage.Rows.Count To 1 Step -1
'on boucle sur les lignes: pour i allant du nombre de cellule contenues dans la plage à 1 avec un pas inversé
    For j = 1 To 2
    'on boucle sur les colonnes : pour j allant de 1 à 2
        If Application.CountIf(plage, plage(i, j)) > 1 Then
        'on test : si la cellule ligne i,colonne j est rencontré dans la "plage de cellule" plage (d'ou le CountIf>1) alors
            Cells(i, j).Delete Shift:=xlUp
            'on supprime la cellule en question (cad la cellule ligne i,colonne j)
        End If
    Next j
Next i
Range("B1:B" & Range("B65536").End(xlUp).Row).Cut
'ensuite, comme tu as deux colonnes, on coupe la colonne B (idem que pour la boucle sur les i)
Range("A" & Range("A65536").End(xlUp).Row + 1).Select
'on selectionne la dernière cellule non vide de la colonne A en partant du bas
ActiveSheet.Paste
'on colle
End Sub

Et je te conseil également de faire tourner la macro pas à pas, tu verras exactement ce qui se passe au fur à mesure comme ca. Pour ce faire, utilise la touche F8.

@+
 

nikwik666

XLDnaute Occasionnel
Re : Colonne

Voila j'ai 2- 3 question a te poser pour mieu comprendre :
- Que veut dire range ?
- Quand je change le range et que je met Range("A2:B" & Range("B65536").End(xlUp).Row) Car j'ai un peti titre en A1 et B1 plus rien ne marche :mad:
-C'est quoi countIf ?

Et voila ca sera tout, le reste je sait a peu prés le remettre en place, je maitrise plutot le C++ :D

Voila merci de ton aide ca m'a bcp apporté !!!
 

Discussions similaires

Réponses
13
Affichages
397

Statistiques des forums

Discussions
312 500
Messages
2 089 013
Membres
104 004
dernier inscrit
mista