Comparaison de 2 onglets pour faire une mise à jour

Mic1955
Messages postés
5
Date d'inscription
lundi 23 janvier 2006
Statut
Membre
Dernière intervention
24 mai 2010
- 23 mai 2010 à 12:31
Mic1955
Messages postés
5
Date d'inscription
lundi 23 janvier 2006
Statut
Membre
Dernière intervention
24 mai 2010
- 24 mai 2010 à 06:00
bonjour,
Ne connaissant pas du tout le codage je me permets de vous solliciter pour m'aider dans cette demande.
je dois comparer 2 onglets qui ont tous les deux un même type de référence(colonne A) et je désire insérer les ajouts effectués dans l'onglet export vers le l'onglet mise à jour.
il est évident que je désire progresser dans ce domaine et donc connaître la méthoologie pour ce genre de problèmatique.
je vous remercie d'avence pour le temps que vous voudriiez bien me consacrer.

8 réponses

cs_DARKSIDIOUS
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
131
23 mai 2010 à 12:58
Salut,

De quel onglet parles-tu ? Quel type de donnée à comparer ?

Si tu veux des réponses, il faut poser des questions précises, on peut pas deviner les problèmes que tu rencontres.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
Mic1955
Messages postés
5
Date d'inscription
lundi 23 janvier 2006
Statut
Membre
Dernière intervention
24 mai 2010

23 mai 2010 à 13:47
Désolé,
je suis tout nouveau dans ce genre de process.Voici les données de l'onglet travail:
Code Site Nom Site Type Code Région Libellé Région S.I.R adresse
123 texte texte texte texte texte texte
45678-2
et voicil'onglet Maj(export):
code nom type adresse
456 texte texte texte
47894-1
la 1° ligne correspond aux en-têtes, la seconde correspond aux données,les cellules sont du format texte et ce dans les onglets.
en espérant que j'ai répondu à vos attentes. Et si ce n'est pas le cas je vous présente mes excuses
0
cs_Jack
Messages postés
14007
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
80
23 mai 2010 à 20:57
Salut
Tu as posté ta question dans la catégorie VBScript
Ne serais-tu pas plutôt en VBA (for Application) ?
Serais-tu dans Excel ?
Quelle version ?
Ce que tu appelles 'onglets', ne serait des 'Feuilles' ?

Beaucoup d'approximation et d'incertitude pour te proposer des solutions ...

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
Mic1955
Messages postés
5
Date d'inscription
lundi 23 janvier 2006
Statut
Membre
Dernière intervention
24 mai 2010

23 mai 2010 à 22:09
bonsoir,
votre réponse est juste ceci montre complètement mon ignorance en la matière.
Qoiqu'il soit je réitère mes remerciements
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mic1955
Messages postés
5
Date d'inscription
lundi 23 janvier 2006
Statut
Membre
Dernière intervention
24 mai 2010

23 mai 2010 à 22:27
J'ai un complémént à vous donner. Le nombre de lignes varie selon l'onglet (environ 1000) et 1500 à 2000 .
En effet cet onglet est un onglet que j'aliment toutes les semaines afin de mettre à jour le premier. J'avaios essayé avec "recherchev" malheureusement je récupérais uniquement que des valeurs connues.
et c'est pourquoi je me suis tourné vers vous faute de solutions et d'idées
0
cs_Jack
Messages postés
14007
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
80
24 mai 2010 à 03:07
Donc, Excel et deux feuilles dont il faut comparer les valeurs des cellules, une à une, cellule pour cellule.
On va partir de cette hypothèse puisque tu sembles avare de renseignements.

Comme tu l'auras surement vu dans d'autres questions du forum qui traitent du parcours de toutes les cellules d'un Range, il faut d'abord définir ce Range :
Ça, ça se trouve en faisant un enregistrement de macro pendant que tu fais un Shift-Ctrl-End :
    Range("A1").Select
    Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select

Donc, pour parcourir chaque cellule de cette zone :
    Dim maCellule As Range
    Sheets("Feuil1").Select
    For Each maCellule In Range("A1", ActiveCell.SpecialCells(xlLastCell))
        ' Le code ici
        DoEvents
    Next

Pour comparer la même cellule dans l'autre feuille, suffit de faire le test et de sortir dès qu'il y a une différence :
' Le code ici =
        If maCellule.Value <> Sheets("Feuil2").Range(maCellule.Address).Value Then
            Debug.Print "Ligne "; maCellule.Row; ", Colonne "; maCellule.Column, " différentes :"
            Debug.Print "  Feuil1 >"; maCellule.Value; "<"
            Debug.Print "  Feuil2 >"; Sheets("Feuil2").Range(maCellule.Address).Value; "<"
            Debug.Print "Arrêt comparaison"
        End If

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
cs_Jack
Messages postés
14007
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
80
24 mai 2010 à 03:09
PS : Voir les indications dans la fenêtre de debug : Ctrl-G
0
Mic1955
Messages postés
5
Date d'inscription
lundi 23 janvier 2006
Statut
Membre
Dernière intervention
24 mai 2010

24 mai 2010 à 06:00
bonjour,
dans les cas merci beaucoup je vais essayer votre proposition et comprendre le fonctionnement.
Quant au fait que je sois avare de renseignements ce n'est pas le cas.
Je ne sais pas quelle genre d'analyse qu'il faut effectuer pour solliciter une demande.
cependant qu'il est vrai que je n'ai pas préciser la version d'excel car tout simplement je passe de l'un à l'autre.
Et si vous me le permettez indiquez-moi la méthodologie pour effectuer une programmation.
Je suis très touché de votre retour par le fait que vous avez passé du temps sur mon sujet et surtout que vous l'avez fait tard dans la nuit voit tôt ce mâtin.

Toujours est-il je vous en suis reconnaissant et j'apprécie énormément
0