Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/09/2011, 15h14   #1
Invité de passage
 
Inscription : septembre 2011
Messages : 7
Détails du profil
Informations forums :
Inscription : septembre 2011
Messages : 7
Points : 1
Points : 1
Bonjour,

Voici mon souci du jour:
J'ai 3 onglets dans un fichier Excel
Je cherche à corréler mes 3 onglets (ONG1, ONG2, ONG3) en un seul (dans un 4ème que j'appelle "Global").
Je viens d'abord copier ONG1 dans "Global".
La colonne D de l'onglet "Global" contient désormais une chaine alphanumérique contenant un nombre (ce nombre varie avec le n° de la ligne) .... je veux compléter ma ligne de "Global" avec des données de ONG2 dont la colonne F contient le nombre trouvé dans chaque ligne de "Global".
Chaque onglet n'a pas le même nombre de colonne et toutes les valeurs n'ont pas forcément de correspondances.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
For nx = 2 To Nb_Lignes
        For ny = 2 To Nb_Lignes
 
            If (Sheets("Global").Range("H" & nx) Like Sheets("ONG2").Range("F" & ny)) Then
                    Sheets("Global").Range("J" & nx).Select
                    Selection = Sheets("ONG2").Range("F" & ny)
 
                    Sheets("Global").Range("K" & nx).Select
                    Selection = Sheets("ONG2").Range("G" & ny)
 
                    Sheets("Global").Range("L" & nx).Select
                    Selection = Sheets("ONG2").Range("AQ" & ny)
 
                    Sheets("Global").Range("M" & nx).Select
                    Selection = Sheets("ONG2").Range("AT" & ny)
 
                End If
            End If
 
        Next ny
    Next nx
J'ai ce genre de code ... mais je n'arrive pas à mes fins.

Après je souhaite faire un peu la même chose entre Global et ONG3 en venant cette fois-ci comparer 2 chaines alphanumériques qui contiendrait le même nombre.

Merci de vos lumières ... en espérant ne pas avoir été trop brouillon dans mes explications.
Nico

En fait mon principal problème réside dans la condition:
Code :
If (Sheets("Global").Range("H" & nx) Like Sheets("ONG2").Range("F" & ny)) Then
Et donc la façon de comparer des chaines alphanumériques entre elles.
Par exemple __145abc et 145 ou _145ef et ab145cd
nimiquel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/09/2011, 15h29   #2
Expert Confirmé
 
Homme Philippe
ex Observeur CGG / Analyste prog.
Inscription : juin 2006
Messages : 1 706
Détails du profil
Informations personnelles :
Nom : Homme Philippe
Localisation : France, Finistère (Bretagne)

Informations professionnelles :
Activité : ex Observeur CGG / Analyste prog.

Informations forums :
Inscription : juin 2006
Messages : 1 706
Points : 3 627
Points : 3 627
Salut, concernant la concaténation de n feuilles en 1 seule , si cela peut t'aider, voir http://www.developpez.net/forums/d11...uille-feuille/
__________________
Pensez à Voter, d'avance merci. ( Pouces en bas à la droite de Citer )
Balisez votre code après l'avoir indenté sous Excel via Smart Indenter
Autre utilitaire : MZ Tools 3.0 VBA

Contribution : Excel / Word / PDF avec Adobe Acrobat Pro / PDFCreator 1 2
kiki29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/09/2011, 16h17   #3
Invité de passage
 
Inscription : septembre 2011
Messages : 7
Détails du profil
Informations forums :
Inscription : septembre 2011
Messages : 7
Points : 1
Points : 1
Ben en fait ce n'est pas du tout ça que je veux faire ... mais merci quand même. Bon j'avoue aussi que le titre de mon sujet aurait pu être mieux choisi: du genre "comparaison de chaîne alphanumérique .... avec nombre 'clef' évoluant en fonction de la ligne" .... finalement même moi j'ai du mal à mettre une expression compréhensible à mon problème !!!
nimiquel est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h51.


 
 
 
 
Partenaires

Hébergement Web