| auteur : Bidou |
Il suffit de faire
Vba |
ActiveWorkbook. Close False
|
La méthode Close permet de gérer un grand nombre de cas. Sa syntaxe générale est :
Vba |
Close (SaveChanges, FileName, RouteWorkbook)
|
Si SaveChanges est vrai et que le classeur n'a pas encore été enregistré, il utilisera la valeur de FileName.
Si celle-ci n'est pas précisée, il y aura appel de la boîte de dialogue SaveAs.
|
| auteur : SilkyRoad |
La méthode SaveAs permet de sauvegarder le classeur sur le PC:
Vba |
Dim Fichier As String
Fichier = " C:\Dossier\NomClasseur.xls "
ThisWorkbook. SaveAs Fichier
|
Vous pouvez aussi spécifier un mot de passe lors de la sauvegarde:
Vba |
Dim Fichier As String
Fichier = " C:\Dossier\NomClasseur.xls "
ThisWorkbook. SaveAs Fichier, , " PassWord99 "
|
|
| auteur : SilkyRoad |
Utilisez la méthode Save:
Vba |
Workbooks (" NomClasseur.xls " ). Save
|
|
| auteur : SilkyRoad |
La méthode SaveCopyAs permet de créer une copie de sauvegarde, sans modifier le classeur spécifié.
Vba |
Dim Chemin As String , Fichier As String
Chemin = " C:\Dossier Archivage\ "
Fichier = " NomClasseur_ " & Format (Date , " yyyymmdd " ) & " _ " & Format (Time , " hhmmss " ) & " .xls "
ActiveWorkbook. SaveCopyAs Chemin & Fichier
|
|
| auteur : SilkyRoad | Vba |
ThisWorkbook. Close SaveChanges:= True
|
|
| auteur : SilkyRoad |
La valeur False doit être spécifiée à l'argument SaveChanges:
Vba |
ThisWorkbook. Close SaveChanges:= False
|
Un autre solution consiste à utiliser la propriété Saved.
La valeur True permet de préciser que le classeur n'a pas été modifié depuis le dernier enregistrement
et donc aucun message d'alerte ne s'affichera lors de la fermeture.
Vba |
ActiveWorkbook. Saved = True
ActiveWorkbook. Close
|
|
| auteur : SilkyRoad |
Vous pouvez utiliser ces deux méthodes:
Vba |
Application. Dialogs (xlDialogSaveAs). Show
|
Vba |
CommandBars. FindControl (ID:= 748 ). Execute
|
Lors de l'affichage de la boîte de dialogue, il est possible de spécifier un nom par défaut dans le champ "Nom de fichier".
par exemple:
Vba |
Application. Dialogs (xlDialogSaveAs). Show (" NomClasseur.xls " )
|
|
| auteur : SilkyRoad | Vba |
Private Sub Workbook_BeforeSave (ByVal SaveAsUI As Boolean, Cancel As Boolean)
If SaveAsUI = True Then Cancel = True
End Sub
|
|
| auteur : SilkyRoad |
Cet exemple boucle sur toutes les feuilles du classeur et sauvegarde chacune au format htm, dans le même répertoire que le classeur.
Une option permet d'ajouter des liens hypertextes vers les autres pages.
Vba |
Dim Ws As Worksheet
Dim Fichier As String , MonCode As String
Dim i As Byte
For Each Ws In ThisWorkbook. Worksheets
Fichier = ThisWorkbook. Path & " \ " & Ws. Name & " .htm "
ActiveWorkbook. PublishObjects . Add _
(xlSourceSheet, Fichier, Ws. Name , " " , xlHtmlStatic, " " , " " ). Publish
Open ThisWorkbook. Path & " \ " & Ws. Name & " .htm " For Append As #1
Print #1 , " <HTML> "
Print #1 , " <HEAD><BODY> "
For i = 1 To Worksheets. Count
If Ws. Name < > Worksheets (i). Name Then
MonCode = " <PR><CENTER><td bgcolor='#FFFFFF' rowspan='2'><a href=' " & _
ThisWorkbook. Path & " \ " & Worksheets (i). Name & " .htm'> " & _
Worksheets (i). Name & " </a></td><BR></CENTER> "
Print #1 , MonCode
End If
Next i
Print #1 , " </HEAD></BODY> "
Close #1
Next
ThisWorkbook. FollowHyperlink ThisWorkbook. Path & " \ " & _
Worksheets (1 ). Name & " .htm " , NewWindow:= True
|
|
| auteur : SilkyRoad |
Quand vous ouvrez la boîte de dialogue "Enregistrer sous",
Cliquez sur le bouton "Outils", en bas et à gauche dans la fenêtre.
Sélectionnez "Options générales".
Saisissez et confirmez le mot de passe.
|
| auteur : SilkyRoad |
xlsx est l'extension pour sauvegarder les classeurs Excel2007 sans macro.
xlsm est l'extension pour sauvegarder les classeurs Excel2007 avec macro.
Lorsque vous cliquez sur le bouton "Enregistrer" ou "Enregistrer sous au format par défaut"
et que le type de fichier défini par défaut est .xlsx,
si le classeur contient des macros, Vous aurez un message d'alerte pour vous prévenir que le format n'est pas compatible.
En cliquant sur le bouton "Non", la boîte de dialogue "Enregistrer sous" s'affiche et vous pouvez modifier le format de fichier.
Par contre si vous cliquez sur le bouton "OUI", le classeur est enregistré sans les procédures. vos macros sont encore visibles
et utilisables tant que le classeur est ouvert, mais si vous fermez le fichier et que vous le ré-ouvrez, les macros ont disparues.
|
| auteur : SilkyRoad |
Vous pouvez lister le nom des lecteurs amovibles, vérifier s'ils sont prêts et quel est leur espace libre.
Il est aussi possible de renommer préalablement la clé pour l'identifier plus facilement dans la procédure (Drv.VolumeName).
Vba |
Sub ListeLecteursAmovible ()
Dim FSO As Object
Dim Drv As Object
Set FSO = CreateObject (" Scripting.FileSystemObject " )
For Each Drv In FSO. Drives
If Drv. DriveType = 1 Then _
MsgBox " le support " & Drv. DriveLetter & " ( " & Drv. VolumeName & _
" ) est pret : " & Drv. IsReady & vbLf _
& " espace libre : " & Format (Drv. FreeSpace , " #,##0 " ) & " octets. "
Next
End Sub
|
Un exemple qui boucle sur les lecteurs amovibles, qui enregistre le classeur si le nom de la clé est
trouvé et si le lecteur est prêt:
Vba |
Sub Sauvegarde_Sur_LecteurAmovible ()
Dim FSO As Object
Dim Drv As Object
Const Cible As String = " MaCle "
Set FSO = CreateObject (" Scripting.FileSystemObject " )
On Error Resume Next
For Each Drv In FSO. Drives
If Drv. DriveType = 1 Then
If Drv. VolumeName = UCase (Cible) And Drv. IsReady Then
ThisWorkbook. SaveAs Drv. DriveLetter & " :\Nom classeur.xls "
Exit Sub
End If
End If
Next
MsgBox " Enregistrement non effectué. " & vbCrLf & _
" Le lecteur amovible ' " & Cible & " ' n'a pas été trouvé. "
End Sub
|
|
| auteur : SilkyRoad |
Si vous fermez l'application après avoir modifié la procédure d'une macro complémentaire, Excel n'affiche
pas de message d'alerte "Voulez vous enregistrer les modifications ...?". Excel ne renvoie aucune information préalable
à la fermeture et vos modifications sont perdues.
Vous devez impérativement sauvegarder toutes vos modifications de procédure en cliquant sur le bouton
"Enregistrer" (ou en utilisant le raccourci clavier Ctrl+S).
|
Consultez les autres F.A.Q's
Les sources présentés sur cette pages sont libre de droits,
et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs.
Copyright ©2008
Developpez LLC. Tout droits réservés Developpez LLC.
Aucune reproduction, même partielle, ne peut être faite de ce site et de
l'ensemble de son contenu : textes, documents et images sans l'autorisation
expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans
de prison et jusqu'à 300 000 E de dommages et intérets.
Cette page est déposée à la SACD.
|