Excel VBA extraire toutes cellules non vide par ligne en txt

Salut,

J’aimerais bien resté sur le Forum pour continuer la discussion.

Fais attention de ne pas te perdre dans ton bla-bla ; il me semble que tu m’expliques en détail des choses qui fonctionnent déjà depuis longtemps (par exemple dans ton passage ‘Voici ce que doit contenir chaque ligne dans les fichiers .txt : …..’).

J’ai maintenant compris que différentes personnes peuvent utiliser cette macro, par contre je n’ai pas compris comment tu veux la leur mettre à disposition. Je m’explique : pour l’instant j’ai placé un bouton directement sur la feuille à traiter. Mais si chacun à sa propre feuille, comment vont-ils faire pour lancer la macro ? Suivant les situations, on pourrait envisager que la macro serait sur une feuille de base et que l’opérateur amène sa feuille à traiter dans un fichier contenant la feuille de base. La macro ainsi lancée agirait sur la feuille « fichiers de départs.xls » à traiter cette fois là. Sinon, comment pensais-tu le faire ?

Pour la gestion des erreurs, tu désires apparemment que les données de base soient d’abord corrigées avant que le fichier .txt soit enregistré. On pourrait donc par exemple lancer des messages par MsgBox qui indiqueraient à quelle(s) lignes se trouvent des erreurs avant de laisser la macro finir son travail, soit enregistrer les fichiers .txt. Mais il faudrait que je comprenne mieux où l’on peut rencontrer de telles erreurs.

Je n’ai pas trop étudié les fichiers reçus car je préfèrerais que tu m’envoies un fichier avec beaucoup moins de lignes et que tu y simules déjà une ou deux erreurs possibles que tu m’indiquerais assez précisément (par exemple tu m’indiques que dans la cellule Z10 il y a du texte à la place d’un chiffre et que ça doit être corrigé). Je te ferais alors une proposition de message d’erreur et on verra si ça te convient. Comme tes fichiers ne semblent absolument pas confidentiels, je te prierais de me les fournir directement sur le Forum.

Allons-y étape par étape et tu verras que l’on avancera assez rapidement.

Bonnes salutations.

Bonjour Yvouille,

Pour répondre à ta question, je comptais mettre la macro directement lié a une icone rajouter dans le ruban.

Nous sommes que 4 à devoir utiliser ce tableur et donc la macro.

Ce que tu m'as fait jusqu'à présent est super.

Il ne me reste plus que 2 problèmes :

1 - le cas ou il n' y a que des C ou des D mais pas les deux. Dans ce cas, ta macro se met en erreur.

2 - Quand il y a du texte, la feuille wwwww reste apparente et on peut voir ou était l'erreur (super cela me convient parfaitement). Mais j'aimerais que, après avoir corrigé la cellule dans la feuille "fichiers de départs" en enlevant le texte, on puisse relancer la macro (cela ne fonctionne pas parce que la feuille wwwww reste existante) ou faire apparaitre un message demandant de supprimer la feuille wwwww.

Amicalement.

Re-salut,

Tu dis que tu m’as donné ta réponse concernant le message indiquant le nombre de lignes, mais ce n’est pas vraiment vrai ; tu ne m’as jamais dit – pour les deux variantes indiquant le nombre de lignes conjointement – si tu préférais la version ‘longue’ ou la version ‘courte’. Je choisis donc la variante qui me convient à moi, à toi de me dire si tu veux autre chose.

Tu ne me fournis toujours pas le fichier demandé et je trouve regrettable car je ne sais toujours pas si je t’ai bien compris au sujet des textes qui peuvent créer un blocage de la macro et qu’il faut corriger avant d’aller plus loin. J’essaie alors de créer moi-même un problème dans la cellule F5 du fichier ci-joint. Si ce n’est pas ce genre de problème que tu voulais mentionner MERCI DE BIEN VOULOIR ME FOURNIR ENFIN UN OU DES FICHIERS MODELES, dans le but de m’aider à t’aider. Avec la solution que j’ai prévue au sujet de ces erreurs, ça ira très bien s’il y a seulement une ou deux erreurs par feuille traitée. Si le nombre d’erreurs possible est bien plus élevé, il faudra probablement trouver une autre solution.

Je n’a pas très bien compris comment tu comptais ‘’mettre la macro directement lié a une icone rajouter dans le ruban’’ (je te cite), mais si tu te débrouilles à ce sujet, tant mieux.

Comme demandé, le fichier ci-joint contrôle tout d’abord que la feuille travaillée se nomme bien’ Fichiers de départs.xls’.

Je pense avoir résolu également le problème des colonnes D ou C absentes.

A te relire.

Bonjour Yvouille,

Merci pour votre persévérance.

1. Votre variante de message me convient parfaitement.

2. Le souci majeur restant concerne les colonnes D ou C :

  • S’il y a des montants dans C ET D : ok cela fonctionne
  • S’il n’y a que des colonnes C OU D : ok cela fonctionne
  • MAIS s’il y a des colonnes C ET D, mais qu’il n’y a aucun montant dans l’un des 2 cas : IL Y A ERREUR (voir exemple ci-joint).

3. Le fichier peut comporter plus de 10 erreurs mais cela reste rare. L’exemple que vous avez créé en F5 est bien. Il s’agit souvent de mauvaises manipulations et d’erreurs de saisies. L’idéal serait de pouvoir lister, peut être pas toutes les erreurs mais un maximum de 10 dans un message. Si cela vous prends trop de temps pour proposer une autre solution, laissez comme cela. Tant pis pour l’exceptionnel.

C’est surtout le souci des colonnes D et C qui pose encore vraiment problème.

Très amicalement.

Re,

Avec un fichier exemple, c'est quand même beaucoup plus facile

Amicalement.

Bonjour Yvouille,

Je crois avoir essayer tous les cas de figures problématiques et,

C'est tout simplement parfait.

Je ne sais vraiment pas comment vous remercier.

Quelle patience.

Merci de mettre à disposition vos connaissances pour tous les gars qui galère, comme moi, sur ce genre problème.

J'espère, si j'ai encore un cas, pouvoir encore faire appelle à vous.

Encore MERCI.

PS : je ne sais pas comment faire pour marquer résolu.

apprentixls a écrit :

J'espère, si j'ai encore un cas, pouvoir encore faire appelle à vous.

No problemo ; si ce n'est pas moi qui te répondra, ce sera sûrement un autre membre.

Pour indiquer ton fil comme résolu, clique sur le petit V vert dans l'un de tes messages (très utile pour le gars qui t'a répondu et qui voit immédiatement dans la liste des fils auxquels il a participé lesquels sont résolus).

Cordialement.

Rechercher des sujets similaires à "vba extraire toutes vide ligne txt"