[MACRO] probléme d'export de feuilles masqué

  • Initiateur de la discussion Initiateur de la discussion Totof91
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

Totof91

Guest
Bonjour Forum,

J'ai un petit souci avec ma macro d'export de feuille excel.

Celle-ci fonctionne parfaitement si l'onglet est visible mais si je masque celui-ci il n'arrive plus à faire l'export et donc "page inexistante" :

Code:
Private Sub Btnvalider_Click()
  Dim strChemin As String
  Dim strNomFic As String
  Dim Lg
  
  Application.ScreenUpdating = False
  Application.DisplayAlerts = False
  ' Si le nom du fichier n'est pas saisi, message alerte et on ne fait rien
  strNomFic = TextBox1.Value
  If strNomFic = "" Then
    MsgBox "Le nom du fichier doit être saisi", vbCritical, "Enregistrement impossible"
    Exit Sub
  End If
  If strChemin = "" Then strChemin = ThisWorkbook.Path
  ' Copie en Excel
  Lg = Application.Match(TextBox1, Range("Extraction"), False)
  If Not IsError(Lg) Then
    If Range("Extraction").Cells(Lg, 2) <> "" Then
      On Error Resume Next
      Sheets(Format(Range("Extraction").Cells(Lg, 2), "@")).Copy
      If Err = 0 Then
        ActiveSheet.SaveAs strChemin & "\" & strNomFic
        ' Fermer le fichier sauvegardé
        ActiveWorkbook.Close
      Else
        MsgBox "Page inexistante"
      End If
    Else
      MsgBox "Page non définie"
    End If
  End If
  On Error GoTo 0
  
  Application.DisplayAlerts = True
  Application.ScreenUpdating = True

En vous remerciant par avance pour votre aide.

Totof
 
Dernière modification par un modérateur:
Re : [MACRO] probléme d'export de feuilles masqué

Bonjour Pierrot,

Merci pour ta réponse.

Mais ça ne fonctionne toujours pas (peut-être que je n'ai pas placé correctement cette variable.

Code:
  Dim strNomFic As String
  Dim Lg
  
  Application.ScreenUpdating = False
  Application.DisplayAlerts = False
  ' Si le nom du fichier n'est pas saisi, message alerte et on ne fait rien
  strNomFic = TextBox1.Value
  If strNomFic = "" Then
    MsgBox "Le nom du fichier doit être saisi", vbCritical, "Enregistrement impossible"
    Exit Sub
  End If
  If strChemin = "" Then strChemin = ThisWorkbook.Path
  Sheets("Extraction").Visible = xlSheetVisible
  ' Copie en Excel
  Lg = Application.Match(TextBox1, Range("Extraction"), False)
  If Not IsError(Lg) Then
    If Range("Extraction").Cells(Lg, 2) <> "" Then
      On Error Resume Next
      Sheets(Format(Range("Extraction").Cells(Lg, 2), "@")).Copy
      If Err = 0 Then
        ActiveSheet.SaveAs strChemin & "\" & strNomFic
        ' Fermer le fichier sauvegardé
        ActiveWorkbook.Close
      Else
        MsgBox "Page inexistante"
      End If
    Else
      MsgBox "Page non définie"
    End If
  End If
  On Error GoTo 0
  
  Application.DisplayAlerts = True
  Application.ScreenUpdating = True

En vous remerciant pour votre aide
 
Re : [MACRO] probléme d'export de feuilles masqué

Sheets("Extraction").Visible = xlSheetVisible

Erreur d'execution 9

L'indice n'appartient pas à la séléction.

Pour info la sheet "extraction" est une liste qui séléctionne automatiquement la feuille à exporter.

Merci
 
Re : [MACRO] probléme d'export de feuilles masqué

Une plage nommée "Extraction"

Pour infos :

=DECALER('client'!$B$4:$B$65536;0;0;'client!$J$1;1)

Merci
 
Dernière modification par un modérateur:
Re : [MACRO] probléme d'export de feuilles masqué

Négatif, ça ne marche pas.

Merci pour ton aide.

Tu trouveras ci-joint le fichier demandé.

Pour infos "vente janvier" = onglet 1

Je l'ai laissé visible mais les onglet 1 2 3 sont à masquer.

Merci par avance.
 

Pièces jointes

Re : [MACRO] probléme d'export de feuilles masqué

Re,

comprends pas tout, si il y a les feuilles 1 2 et 3 de masquées comment tu en selectionnes 1 à partir de l'usf, car c'est bien de cela qu'il s'agit..... Sachant que dans la listbox sur la feuile il y a des noms qui ne correspondent pas à des noms de feuille... A ta place j'utiliserais plutôt un combo sur l'usf....
 
Re : [MACRO] probléme d'export de feuilles masqué

J'ai peut-être trouvé solution à mon probléme :

Crée une feuille qui reste "visible"

Cette feuille récupere la feuille séléctionné via la liste box via macro.

Comme cela je peux remplacer dans mon code "extraction" par le nom d'une feuille fixe.

J'ai essayé d'implémenter ce code mais sans succés pour le moment :

Workbooks("nomclasseur1").Sheets("Extraction").Copy After:=Workbooks("nomclasseur1").Sheets(1)

En vous remerciant pour votre aide 😉
 
Dernière modification par un modérateur:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 Problème de date
Réponses
5
Affichages
358
Retour