Si vous souhaitez transmettre des données et qu’une seule feuille de calcul dans le classeur est intéressante, éclaircissez les classeurs et supprimez toutes les autres feuilles de calcul à l’exception de la table actuellement activée. Appelez ensuite la boîte de dialogue ENREGISTRER SOUS et entrez le nom de la feuille de calcul comme nom du classeur. Démarrez la macro suivante.
Sub SupprimerToutesLesFeuille() Dim mafeuille As Object Application.DisplayAlerts = False For Each mafeuille In Sheets If mafeuille.Name <> ActiveSheet.Name Then mafeuille.Delete End If Next mafeuille On Error Resume Next ChDir ("C:\monfichier") Application.Dialogs(xlDialogSaveAs).Show _ ActiveSheet.Name Application.DisplayAlerts = True End Sub
Définissez d’abord une variable objet. Ensuite, dans une boucle For Each, vous accédez à l’objet de collection Sheets, qui contient toutes les feuilles du classeur actif. Dans la boucle, comparez le nom de la feuille de calcul active avec la feuille de calcul appropriée de l’objet d’arrêt. Utilisez la méthode Delete pour supprimer toutes les feuilles de calcul du classeur, à l’exception de la feuille de calcul active. Passez ensuite dans le répertoire C: \ monfichier avec l’instruction ChDir et appelez la boîte de dialogue ENREGISTRER SOUS intégrée.
Si vous souhaitez passer à un autre lecteur, utilisez l’instruction ChDrive.