EXCEL VBA

Fermé
sagrada Messages postés 66 Date d'inscription mardi 23 août 2005 Statut Membre Dernière intervention 10 février 2008 - 24 août 2005 à 09:18
WhiteFang Messages postés 2063 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 - 24 août 2005 à 18:13
Bonjour à tous

Je souhaite créer un petit prog en macro vba excel, dont l'objectif est le suivant: une seule macro pourra agir sur plusieurs fichiers excel extraits d'un logiciel, et que le programme supprimera automatiquement les colonnes citées dans le programme.

Si qlq'un pourra me montrer comment faire ce sera vraiment GENIAL, j'arrive à le faire avec le programme que pour un seul fichier... Ca ne m'arrange pas beaucoup c'est pour ça que je fais appel à vos lumières.

Merci d'avance et à très bientôt.

Anicet.

5 réponses

WhiteFang Messages postés 2063 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 204
24 août 2005 à 15:06
;-) Plusieurs choix s'offrent à toi...

1) Tu veux que ton programme soit intégré à Excel, sans dépendre d'un quelconque classeur : Tu crée une "Macro Complémentaire"

2) Tu veux que le classeur contenant le code soit ouvert quand tu lances Excel : Tu crées ta macro et tu enregistres ton classeur XLStart

Pour faire simple :

Dans un module que tu auras créé, tu crées une procédure de nom NomDeTonProgramme, ça devrait donner ça :
Sub NomDeTonProgramme()
ActiveSheet.Columns(10).Delete
End Sub


Ca, ça te vire la colonne 10 de la feuille en cours...

Ensuite, tu reviens dans Excel, dans cliques avec le bouton droit sur une barre d'outils, tu fais "personnaliser", onglet "Commandes", tu choisis "Nouveau Menu" que tu "glisse" où tu veux dans une barre d'outils existante, tu reclique avec le bouton droit sur le nouvel objet que tu viens de créer et tu lui "affecte une macro", c'est à dire ton petit bout de code VBA....

Et voilà, tu as un petit menu qui te lancera ta procédure....

Petite précision : Enregistre ce classeur dans XLStart (Dossier Office de Program Files)....
;-)

1
WhiteFang Messages postés 2063 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 204
24 août 2005 à 12:32
;-) Salut !

Que veux tu précisemment ?

Ouvrir plusieurs dossiers et travailler sur les cellules ?

Bref, explique bien tout ! ;-))))))))
0
sagrada Messages postés 66 Date d'inscription mardi 23 août 2005 Statut Membre Dernière intervention 10 février 2008 1
24 août 2005 à 14:29
Merci de m'avoir répondu,

créer un programme en macro dont l'objectif est de supprimer quelques colonnes d'un fichier excel et que ce programme soit applicables à tout autre fichier excel

une et une seule macro pour plusieurs fichiers différents.

Voilà ce que je souhaite faire,
0
sagrada Messages postés 66 Date d'inscription mardi 23 août 2005 Statut Membre Dernière intervention 10 février 2008 1
24 août 2005 à 16:57
Ok, merci je vais essayer de le mettre en application. Je débute en vba alors ...

si tu veux voir mon code en vba c ça:

sub consultation ( )

workbook.activate
range("G:CE").select
selection.clearcontents

end sub

et ce que tu viens de me montrer je ne c pas encore où l'intégrer mais bon on verra...
0
WhiteFang Messages postés 2063 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 204
24 août 2005 à 17:27
;-)

Pas de "Range" !! Je veux pas voir ça !

Et le activate y sert à rin... ;-)))

J'te pardonne ;-))))

;-)

Si tu as vraiment des besoins, sur VBA, tu as mon site... C'est dans mon profil...

;-)
0
random Messages postés 1612 Date d'inscription vendredi 26 novembre 2004 Statut Membre Dernière intervention 30 mars 2006 155 > WhiteFang Messages postés 2063 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008
24 août 2005 à 17:36
pourrais tu noux expliquer tres préventions contre le range ?

à ma connaissance c'est sous excel l'objet par défaut
associé à cell il est très bien
0
WhiteFang Messages postés 2063 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 204 > random Messages postés 1612 Date d'inscription vendredi 26 novembre 2004 Statut Membre Dernière intervention 30 mars 2006
24 août 2005 à 18:04
;-) C'était un peu d'humour... C'est ce que je disais à mes élèves... en souriant...

Mais c'est vrai, je n'aime pas Range, car il fait appel à des réservations mémoire qui sont gourmandes, que quand tu développe bien, même en utilisant Cells dans Range, tu n'as aucun besoin de Range qui est à la base fait pour un adressage Texte, ce qui n'est pas bien non plus, et qu'il y a toutes les méthodes et propriétes disponibles pour avoir un code bien "net" et bien appropriées aux objets...

Bref, Range, pour moi, c'est quand tu enregistres en auto et que tu ne veux pas faire du vrai dev dynamique...

Mais chacun son truc, je ne veux agresser personne... ;-)
0
sagrada Messages postés 66 Date d'inscription mardi 23 août 2005 Statut Membre Dernière intervention 10 février 2008 1
24 août 2005 à 18:11
Ok ça marche nickel-chrome, Merci les gars vous êtes formidables

J'ai utilisé Range et ça marche, je continuerai demain avec Activate comme ça ne fera pas de jaloux.

See you soon.

Merci encore
0

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

Posez votre question
WhiteFang Messages postés 2063 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 204
24 août 2005 à 18:13
;-)
0