Comparer des feuilles excel et faire la mise à jour

Fermé
muiigisha Messages postés 61 Date d'inscription lundi 25 septembre 2017 Statut Membre Dernière intervention 6 décembre 2017 - 10 oct. 2017 à 11:34
muiigisha Messages postés 61 Date d'inscription lundi 25 septembre 2017 Statut Membre Dernière intervention 6 décembre 2017 - 12 oct. 2017 à 09:00
Bonjour le forum,

j'ai pusieurs fichiers excel à comparer et à chaque je dois ajouter dans un fichier (le plus ancien) ce qui s'est ajouté dans les nouveaux et qui n'est pas pas présent chez lui. J'ai pensé à aller cellule après cellule mais le code mets au moins 20 mins. N'y aurait-il pas un autre moyen plus rapide?

Merci d'avance

A voir également:

2 réponses

Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 929
10 oct. 2017 à 13:25
Bonjour

Tu as posté ta question dans le forum VB/VBA, ce qui sous entend (puisque tu ne le dis pas clairement) que tu utilises une macro VBA ou que tu as fait un programme (VB6, VB.Net, VBS?).

A supposé que tu utilises une macro, as tu bloqué la mise à jour de l'affichage le temps qu'elle s'exécute?

Si oui, il faut gardé à l'esprit qu'Excel n'est pas une base de données, même s'il est souvent utilisé comme tel. C'est un tableur. Une des limitations d'un tableau par rapport à une base de données peut être la vitesse d'accès aux dites données.
1
muiigisha Messages postés 61 Date d'inscription lundi 25 septembre 2017 Statut Membre Dernière intervention 6 décembre 2017
11 oct. 2017 à 08:45
Bonjour Whismeril,
merci pour ton intervention.
Oui j'ai mis "Application.Screenupdating= False" au tout début
Donc en gros je ne peux pas vraiment optimiser mon code :( ?
0
Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 929
11 oct. 2017 à 11:28
Alors tu peux écrire essayer d’extraire les données en tableau.
https://silkyroad.developpez.com/vba/tableaux/
0
muiigisha Messages postés 61 Date d'inscription lundi 25 septembre 2017 Statut Membre Dernière intervention 6 décembre 2017
11 oct. 2017 à 11:36
Ah ouii et le comble c'est que j'avais déja été sur cette page. Merci beaucoup j'essaie celà et je reviens vers vous
Merci
0
muiigisha Messages postés 61 Date d'inscription lundi 25 septembre 2017 Statut Membre Dernière intervention 6 décembre 2017
11 oct. 2017 à 11:56
désolée mais j'ai un souci. Dans les recherches que je fais je constate que ce sont des plages affectées au tableau, dans ce cas comment reconnaître je veux dire indexer les colonnes dont on veut se servir (moi je voudrais juste affecter 3 colonnes dans un tableau et 3 dans un autres et pouvoir faire la comparaison des triplets de chacun des tableaux à chaque fois).
Merci d'avance pour votre aide

puis-je affecter seulement des colonnes spécifiques dans un tableau et non une plage?
0
muiigisha Messages postés 61 Date d'inscription lundi 25 septembre 2017 Statut Membre Dernière intervention 6 décembre 2017
11 oct. 2017 à 17:11
Merci j'ai trouvé
il fallait juste toujours prendre la plage et compter les colonnes puis simplement les indicer
merci encore je suis quittée de 20mins à à peine 1minutes et je le fais tellement à tout bout de champ.
Merci
0
muiigisha Messages postés 61 Date d'inscription lundi 25 septembre 2017 Statut Membre Dernière intervention 6 décembre 2017
12 oct. 2017 à 09:00
Bonjour,
je reviens vers vous car je n'arrive pas à récupérer l'indice de la dernière ligne non vide j'ai déja utilisé plusieurs codes par rapport à cela;soit j'ai l'erreur "subscript out of range",soit ca me renvoie un chiffre qui n'est pas du tout l'indice de la dernière ligne renseignée de la feuille.
Aidez moi svp
merci d'avance
voici ci dessous les différentes instructions que j'ai utilisé jusqu'ici
mySheet.Activate
idLastrow = ActiveSheet.UsedRange.Rows.Count 'Worksheets("mySheet").UsedRange.SpecialCells(xlCellTypeLastCell).Row 'Split(Worksheets("mySheet").UsedRange.Address, "$")(4)
0