Copie de colonnes avec fct personnalisé VBA sans cellules vides
Tomy.G
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Ceci est mon premier post sur ce forum et j'espère être le plus compréhensible possible.
Je travaille sur un fichier excel 2003 depuis peu et connais très peu l'étendue de son language, j'ai réussi gràce à votre forum à surmonter de nombreux problèmes et je vous en remercie. Mais me voici confronté à un problème concernant une fonction VBA.
J'arrive à modifier quelques fonctions mais pas encore à en créer et j'espère que vous pourrez m'aider à solutionner mon problème.
Dans une feuille, je souhaiterais y integrer une fonction VBA me permettant de copier des données situées dans les colonnes A,B,C,D,E(A2:A100,B2:B100,C2:C100,D2:D100,E2:E100) vers les colonnes respectives G,H,I,J,K situé dans la même feuille. Cette fonction me permettrais de supprimer toutes les cases vides compris dans les plages de départs ( Possible cellules vides avant mes premières données et entre mes données)
Je ne sais pas si cela est possible mais je souhaite y intégrer une fonction sous forme "Fonction personnalisé", afin de pouvoir l'utiliser sans macro. Intégrer un code VBA dans un Module, aller la chercher dans "Fonction"/ Fonction personnalisé puis renseigner ma plage de départs puis ma plage d'arrivée. ?
J'ai préalablement regarder de nombreux cas similaires cela est possible mais par l'intermédiaire d'une macro.
Je serait vraiment reconnaissant si quelqu'un avait la réponse à mon problème.
En attente de vous lire je vous souhaite une bonne journée.
Cordialement
Tom
Ceci est mon premier post sur ce forum et j'espère être le plus compréhensible possible.
Je travaille sur un fichier excel 2003 depuis peu et connais très peu l'étendue de son language, j'ai réussi gràce à votre forum à surmonter de nombreux problèmes et je vous en remercie. Mais me voici confronté à un problème concernant une fonction VBA.
J'arrive à modifier quelques fonctions mais pas encore à en créer et j'espère que vous pourrez m'aider à solutionner mon problème.
Dans une feuille, je souhaiterais y integrer une fonction VBA me permettant de copier des données situées dans les colonnes A,B,C,D,E(A2:A100,B2:B100,C2:C100,D2:D100,E2:E100) vers les colonnes respectives G,H,I,J,K situé dans la même feuille. Cette fonction me permettrais de supprimer toutes les cases vides compris dans les plages de départs ( Possible cellules vides avant mes premières données et entre mes données)
Je ne sais pas si cela est possible mais je souhaite y intégrer une fonction sous forme "Fonction personnalisé", afin de pouvoir l'utiliser sans macro. Intégrer un code VBA dans un Module, aller la chercher dans "Fonction"/ Fonction personnalisé puis renseigner ma plage de départs puis ma plage d'arrivée. ?
J'ai préalablement regarder de nombreux cas similaires cela est possible mais par l'intermédiaire d'une macro.
Je serait vraiment reconnaissant si quelqu'un avait la réponse à mon problème.
En attente de vous lire je vous souhaite une bonne journée.
Cordialement
Tom
A voir également:
- Copie de colonnes avec fct personnalisé VBA sans cellules vides
- Copie cachée - Guide
- Comment faire un tri personnalisé sur excel - Guide
- Comment faire des colonnes sur word - Guide
- Super copie - Télécharger - Gestion de fichiers
- Copie écran samsung - Guide
3 réponses
Bonjour,
1) La réponse n'est pas négative mais ATTENTION : une fonction personnalisée ne peut agir que dans la ou les cellules dans laquelle elle est écrite. Dans ton cas il faudrait ecrire une fonction matricielle.
2) On ne peut pas utiliser une fonction personnalisée, sans accepter l'exécution des macro.
3) Veux-tu éliminer les cellules vides dans chaque colonne une à une ou uniquement les lignes où toutes les cellules sont vides ???
Dans ce dernier cas, pas besoin de VBA, un simple tri suffit
Cordialement
Patrice
1) La réponse n'est pas négative mais ATTENTION : une fonction personnalisée ne peut agir que dans la ou les cellules dans laquelle elle est écrite. Dans ton cas il faudrait ecrire une fonction matricielle.
2) On ne peut pas utiliser une fonction personnalisée, sans accepter l'exécution des macro.
3) Veux-tu éliminer les cellules vides dans chaque colonne une à une ou uniquement les lignes où toutes les cellules sont vides ???
Dans ce dernier cas, pas besoin de VBA, un simple tri suffit
Cordialement
Patrice
Tomy.G
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
Bonjour Patrice je me disais que si j'avais une fonction personnalisé je pourrais la répéter pour chaque colonne dont j'ai besoin, Je ne suis pas contre l'exécution des macro mais comme j'ai 40 feuilles excel je souhaitais rentrer les fonctions dans chaqu'une d'elle une fois puis ne plus m'en occuper, je voulais eviter le bouton affecter à la macro. Pour ta 3 eme question, j'adorerais supprimer toutes les cellules vides de la plage de départ. Pense tu pouvoir faire quelque chose car j'ai beau chercher pas moyen de trouver cela. Dans tous les cas je te remercie Patrice.
Re,
Voici une fonction matricielle qui élimine les lignes vides :
https://www.cjoint.com/c/EDytjC9IyCL
Voici une fonction matricielle qui élimine les lignes vides :
https://www.cjoint.com/c/EDytjC9IyCL
Bonjour,
comme dit Patrice, ce n'est pas impossible (d'ailleurs il te l'a faite), mais tu vas te compliquer singulièrement la vie si ton nombre de données évolue.
Les lignes non prévues ne s'afficheront pas (logique), et étendre une formule matricielle validée sur une plage ne se fait pas facilement (essaie d'ajouter 2 lignes et tu verras...)
Un Sub qui se rafraichit avec un bouton ou automatiquement sur activation de la feuille (à condition que ces cellules ne soient pas utilisées par une autre feuille) serait sans doute plus simple et plus sécure à l'utilisation.
eric
comme dit Patrice, ce n'est pas impossible (d'ailleurs il te l'a faite), mais tu vas te compliquer singulièrement la vie si ton nombre de données évolue.
Les lignes non prévues ne s'afficheront pas (logique), et étendre une formule matricielle validée sur une plage ne se fait pas facilement (essaie d'ajouter 2 lignes et tu verras...)
Un Sub qui se rafraichit avec un bouton ou automatiquement sur activation de la feuille (à condition que ces cellules ne soient pas utilisées par une autre feuille) serait sans doute plus simple et plus sécure à l'utilisation.
eric