Ouverture d'une fenêtre enregistrement / erreur lors de l'enregistrement?
Robikatchou
Messages postés50Date d'inscriptionmardi 7 juillet 2009StatutMembreDernière intervention28 août 2009
-
28 juil. 2009 à 10:04
Robikatchou
Messages postés50Date d'inscriptionmardi 7 juillet 2009StatutMembreDernière intervention28 août 2009
-
29 juil. 2009 à 10:52
Bonjour,
Suite à cette macro qui modifie une partie de mon fichier je souhaiterai qu'une fenêtre "Enregistrer sous" s'ouvre automatiquement, ce qui se fait...
Le problème c'est qu'après je rentre le nom sous lequel je souhaite enregistrer je clique sur "enregistrer" mais rien ne se passe: la fenêtre se ferme et mon fichier n'est enregistré nulle part??
Sub Chgmt_Année()
Dim i As Integer
Dim j As Integer
i = 4
Do While i < 300
If Cells(i, 21) = "OUI" Then
Cells(i, 20).Select
Selection.Copy
Cells(i, 11).Select
ActiveSheet.Paste
End If
i = i + 1
Loop
Columns("U:U").Select
Selection.ClearContents
For j = 4 To 101
Cells(j, 10).Select
ActiveCell.FormulaR1C1 = _
"=IF(OR(RC[1]=""fin de vie"",RC[-2]=""DMS""),0,RC[-2])"
Next j
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 28 juil. 2009 à 13:53
Salut
FileDialog ne s'occupe pas de sauver ton fichier, mais seulement de proposer une interface permettant de saisir le chemin et le nom du fichier.
A toi ensuite de lire le chemin et le nom pour exécuter la sauvegarde :
With Application.FileDialog(msoFileDialogSaveAs)
If .Show = -1 Then
SaveAs .SelectedItems(1)
End If
End With
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 28 juil. 2009 à 23:56
SaveAs fait partie des instructions VBA, bizarre qu'il ne la reconnaisse pas.
Tu es sous Excel, Word, ... ?
Non, puisque, lors d'un Save, tu es sensé ne sélectionner (ou écrire) qu'un seul nom de fichier, le premier élément de Item (qui est obligatoirement un 'tableau') est le nom choisi, avec son chemin.
Ce 'tableau' sert en cas de multi-sélection (voir exemple de l'aide)
Le test "Show = -1" car Show renverra 0 si tu as annulé
Si tu ne t'en sorts pas avec le FileDialog, tu peux te rabattre sur le CommonDialog de VB6 : contrôle ActiveX (présent dans n'importe quel XP) à placer sur un UserForm
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)