Recherchev avec VBA depuis tableau excel

Fermé
SidiMontana Messages postés 6 Date d'inscription mercredi 22 mai 2013 Statut Membre Dernière intervention 17 juillet 2013 - 22 mai 2013 à 14:31
SidiMontana Messages postés 6 Date d'inscription mercredi 22 mai 2013 Statut Membre Dernière intervention 17 juillet 2013 - 22 mai 2013 à 16:56
Bonjour à tous,

J'ai un fichier avec plusieurs onglets, l'onglet A contient des résultats d'inventaire (1er comptage) et j'ai l'onglet B qui est une extraction de l'état de stock.
Je souhaiterai comparer la quantité comptée avec la quantité de l'état de stock.

Pour ce faire, j'utilise une fonction recherchev, ( = si(estna(recherchev;"erreur";recherchev)

Le problème est qu'il y a 25000 lignes pour 23 colonnes, l'actualisation du fichier prends plus d'une dizaine de minutes.

L'idée serait d'utiliser VBA pour raccourcir les temps de traitement, je souhaiterai entrer l'onglet B sous forme de tableau de donnée dans VBA, puis faire la recherchev dans ce tableau et enfin restituer le résultat dans l'onglet A.

Mais je n'arrive même pas à définir le tableau, je bloque sur les colonnes avec j. Ou alors je dois entrer à la main les 23 colonnes mais le temps de calcul reste assez long.

Avez vous des idées?
A voir également:

2 réponses

michel_m Messages postés 16602 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 313
Modifié par michel_m le 22/05/2013 à 15:59
Bonjour,

Beaucoup de flou et d'imprécisions dans ton message

par ex
Je souhaiterai comparer la quantité comptée avec la quantité de l'état de stock.
on restitue dans quelle colonne ?
Dans quelle colonne se trouvent la quantité comptée et l'état de stock ?

Le problème est qu'il y a 25000 lignes pour 23 colonnes
dans quel onglet: A;B ou les 2 ....?
23 colonnes commençant à la colonne ...?

je bloque sur les colonnes avec j
C'est à dire ? j, c'est quoi ?

puis faire la recherchev
pourquoi une rechercheV ? en vba il y a d'autres moyens....

Dis toi bien que l'on a uniquement ce que tu écris pour essayer de t'aider. De plus, les intervenants (qui sont tous bénévoles, je te le rappelle), sont souvent rebutés par un manque d'effort du questionneur.

au besoin
mettre un extrait du classeur ( 1000 lignes maxi) sans données confidentielles en pièce jointe sur
https://www.cjoint.com/
puis copier l'adresse du lien et la coller dans le message de réponse

Dans l'attente



Michel
0
SidiMontana Messages postés 6 Date d'inscription mercredi 22 mai 2013 Statut Membre Dernière intervention 17 juillet 2013
Modifié par SidiMontana le 22/05/2013 à 16:18
oui je comprends et c'est vrai que c'est assez confus mais ça l'est pour moi aussi...

Donc voici un fichier d'exemple :

https://www.cjoint.com/?3Ewqm5V63nM

En fait, je voudrais mettre le tableau de l'onglet "analyse premier comptage" sous vba pour y appliquer la recherchev contenu dans la colonne I .

Là ça va, mais quand il y toutes les lignes et toutes les colonnes ça prends plus de 15 min. D'où mon idée de calculer en mémoire pour accelérer le temps de traitement.

J'ai commencé à travailler dessus mais j'arrive pas à définir correctement le tableau et derrière je n'ai aucune bille pour appliquer et restituer la recherchev.

Merci pour votre futureaide.
Cordialement
0
michel_m Messages postés 16602 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 313
22 mai 2013 à 16:51
Incompréhensible la colonne renverait à la colonne F et la colonne F à la colonne i ???

Désolé,
Abandon
0
SidiMontana Messages postés 6 Date d'inscription mercredi 22 mai 2013 Statut Membre Dernière intervention 17 juillet 2013
22 mai 2013 à 16:56
en fait la recherchev dans la colonne I recherche la colonne F de l'onglet saisie et renvoie la F de l'onglet analyse premier comptage.

C'est un peu plus clair?

Merci d'essayer michel, je me casse les dents dessus depuis deux jours
0