Transfert entre fichier

Fermé
Byzance - 6 nov. 2012 à 13:58
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 - 6 nov. 2012 à 21:44
Bonjour,

J'ai, avec beaucoup de mal, créer un programme en VB pour transférer des infos entre 2 fichiers. Comment faire pour que le fichier "synthèse.xlsx n'apparaisse pas à l'écran ?

Par ailleurs, comment faire apparaitre une fenêtre qui ferme le fichier de base "Evaluation ST" ?

Sub Macro()
'
' Macro1 Macro
'
Workbooks.Open Filename:="L:\Evaluations\Synthese.xlsx"
Range("B5:L5").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Windows("Evaluation ST.xlsm").Activate
Range("B110:L110").Select
Selection.Copy
Windows("Synthese.xlsx").Activate
Range("B5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWorkbook.Save
ActiveWindow.Close
Union([A92], [N92]).ClearContents
Range("B5").Value = "Completer ici"
Range("B6").Value = "Completer ici"
Range("N5").Value = "Completer ici"
Range("N6").Value = "Completer ici"
Range("D11").Value = "Valeur à selectionner"

End Sub
A voir également:

2 réponses

Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
6 nov. 2012 à 18:19
Bonsoir Byzance,

Pour travailler dans un classeur qui reste fermé : http://www.commentcamarche.net/faq/32961-vba-excel-lire-dans-un-classeur-ferme et ne pas l'ouvrir comme tu le fait ici : Workbooks.Open Filename:="L:\Evaluations\Synthese.xlsx" !
Je ne comprends pas : Windows("Evaluation ST.xlsm").Activate Tu veux afficher la macro ? Pourquoi faire ?
comment faire apparaitre une fenêtre qui ferme le fichier de base "Evaluation ST" ? C'est pour cliquer sur un bouton qui, quand tu cliques dessus, va fermer le classeur ? ou pour afficher (te dire) que le classeur est fermé ?
0
Bonsoir Heliotte,
Merci pour ton retour. Je vais essayer la méthode du faq.

1 - Je ne comprends pas : Windows("Evaluation ST.xlsm").Activate Tu veux afficher la macro ?
non ...
Pourquoi faire ? Juste pour rendre actif le fichier sinon ca marche pas.

2- comment faire apparaitre une fenêtre qui ferme le fichier de base "Evaluation ST" ? C'est pour cliquer sur un bouton qui, quand tu cliques dessus, va fermer le classeur ? oui c'est pour ca.

Merci
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
6 nov. 2012 à 21:44
Bonsoir Byzance,
J'ai mis le classeur à ta disposition : https://www.cjoint.com/?3KgvNUWDcuc
Ta macro se trouve dans un module. Tu lui rajoute ce code
UserForm1.Show
à l'endroit où tu veux que ton formulaire apparaisse, cad, après avoir fait tout le travail et avant qu'il ne se ferme.
Pour que ce formulaire fonctionne, il faut changer le nom de ton classeur à cet endroit :
Private Sub cmdbtn_Ok_Click()
    Workbooks("Formulaire_pourFermerClasseur.xls").Close
End Sub

Voilà
0