Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1378 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Enregistrer une feuille au format txt

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Enregistrer une feuille au format txt

n°2185606
el_gladou
when you fell in the foggy dew
Posté le 12-04-2013 à 15:02:18  profilanswer
 

Bonjour,
 
J'aimerai utiliser une macro qui va enregistrer la feuille active ("Upload" ) au format txt (Tab delimited) sur le bureau, en prenant comme nom une valeur entrée dans la cellule  "i1" de la feuille "Sheet1" (je fais une boite de dialogue qui demande de saisir le nom du fichier et qui le reporte en i1).
 
Mais pour arriver à mettre l'un dans l'autre j'en chie  [:andogogol]  
 
Si quelqu'un a une macro qui fait ca ou un bout de macro qui fait une partie du travail je dis pas non  :o  
 
merci d'avance


---------------
Right proudly high over Dublin Town they hung out the flag of war
mood
Publicité
Posté le 12-04-2013 à 15:02:18  profilanswer
 

n°2185739
Marc L
Posté le 13-04-2013 à 13:56:37  profilanswer
 

 
           Bonjour,       l'enregistreur de macros peut être un ami ‼ …
 


---------------
                Comme la vitesse de la lumière est supérieure à celle du son, certains ont l'air brillant avant d'avoir l'air con !                             Liste des accus FAD !
n°2185950
el_gladou
when you fell in the foggy dew
Posté le 15-04-2013 à 19:00:44  profilanswer
 

Avec l'enregistreur de macro j'arrive à enregistrer la manipulation (lieux, format) mais le nom du classeur reste fixe vu que c'est le nom que j'entre quand j'enregistre mon classeur.


---------------
Right proudly high over Dublin Town they hung out the flag of war
n°2186003
Marc L
Posté le 16-04-2013 à 09:04:26  profilanswer
 

 
           Dans l'enregistrement du classeur tu lui passes l'adresse de la cellule …
 

n°2186042
el_gladou
when you fell in the foggy dew
Posté le 16-04-2013 à 11:29:27  profilanswer
 

J'ai trouvé quelque chose qui fait mon bonheur, macro qui enregistre la feuille active au format .txt avec une boite de dialogue qui s'ouvre afin de demander à l'utilisateur de choisir un nom pour le fichier. Fichier enregistrer dans le répertoire par défaut (Mes documents)
 
Private Sub saveTxt()
 
    Dim wb As Workbook, ws As Worksheet
    Dim newWB As Workbook, newWS As Worksheet
    Dim strSaveAs As String
 
    On Error GoTo errSave
     
    Application.ScreenUpdating = False
         
    Set wb = ActiveWorkbook
    Set ws = ActiveSheet
 
    With ws
        .Select
        .Copy
    End With
 
    Set newWB = ActiveWorkbook
    Set newWS = ActiveSheet
 
    strSaveAs = Inputbox("Please enter filename." )
     
    With newWB
        .SaveAs strSaveAs, xlText
        .Close (False)
    End With
 
    wb.Activate
    ws.Select
 
exitSave:
    Application.ScreenUpdating = True
    Exit Sub
 
errSave:
    MsgBox (Err.Number)
    MsgBox (Err.Description)
    Resume exitSave
 
End Sub


---------------
Right proudly high over Dublin Town they hung out the flag of war
n°2186049
Marc L
Posté le 16-04-2013 à 11:54:27  profilanswer
 

 
         Faut faire attention quand on fait un copier / coller d'un code via le net
         car souvent y a du pas bon vu les codes de débutant ! …
 

  • Le  .Select  est inutile avant le  .Copy car c'est déjà la feuille active !


  • Idem pour le  Select  suivant …


  • En consultant l'aide de la méthode  Close  associé à un classeur (à un objet  Workbook  donc),

         tu t'apercevras que non seulement elle peut enregistrer le fichier mais aussi réclamer son nom ‼
 

  • La variable objet  newWS  ne sert à rien sauf à perdre du temps et bouffer de la mémoire !

         J'utilise souvent des variables objets mais dans ce cas précis, je n'en utiliserais aucune …
 

n°2186079
el_gladou
when you fell in the foggy dew
Posté le 16-04-2013 à 14:35:32  profilanswer
 

Merci pour ces conseils éclairés (enlever les select en trop, et le newws), la macro s’exécute un petit peu plus vite qu'avant.
 
Je vais voir pour la méthode Close.


---------------
Right proudly high over Dublin Town they hung out the flag of war

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Enregistrer une feuille au format txt

 

Sujets relatifs
[Résolu]Contourner protection feuille[Résolu] Enregistrer le contenu d'un XML dans BDD Mysql
Copier Coller une plage excel dans PPT en format Imagecomment enregistrer le chemin d'un fichier pdf dans une BD
[VBA] activer feuille avec variable dans le nomproblème format cellule
Export Feuille Excel en valeur avec cellule fusionnéesenregistrer avec powerpoint
Enregistrer mesures Labview 
Plus de sujets relatifs à : Enregistrer une feuille au format txt


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR