transfert feuille dans document texte

Philippe63000

XLDnaute Junior
Bonsoir,

Je cherche à copier une feuille excel dans un fichier ASCII.
Le programme ci-dessous convient mais j'ai des problèmes de largeur. La feuille excel contient les mois de l'année écrits en toutes lettres et il faudrait que je les transforme (les raccourcisse). De même j'aimerais que les chiffres qui composent le reste du tableau soient limités à deux chiffres après la virgule.
Mais les instructions :
A = .Cells(i, j).Value
' b = Int(A * 100) / 100
ne sont pas correctes.

Pourriez-vous s'il vous plaît m'aider à résoudre ce problème.

Merci d'avance.


Code:
Sub creer_TXT(plage)
'-------------------------------------------------------------------------------------
chemin="c:\Mes documents\"  
sous_titre ="essai"
Dim Fs As Object, A As Object
Dim i As Long
 
Set Fs = CreateObject("Scripting.FileSystemObject")
Set A = Fs.CreateTextFile(chemin & sous_titre(0) & annee_etudiee & ".txt", True)
With Sheets("Feuil1")
   'For i = 1 To .Cells(.Rows.Count, "A").End(xlUp).Row
   For i = 1 To 35
   For j = 2 To 13
        A.Write (.Cells(i, j).Value) & "   "
      Next j
      A.writeLine  ' on passe à la ligne
   Next i
End With
A.Close
Set A = Nothing
Set Fs = Nothing
 

Roland_M

XLDnaute Barbatruc
Re : transfert feuille dans document texte

bonsoir,

Code:
'pour ce qui est numérique
If IsNumeric(.Cells(i, j)) Then
   V$ = Format(.Cells(i, j).Value, "#.##") & " "
Else
   V$ = .Cells(i, j) & " "
End If
'pour les mois en lettres 4caract suffisent
V$ = Left(.Cells(i, j), 4) & " "
 
Dernière édition:

Philippe63000

XLDnaute Junior
Re : transfert feuille dans document texte

Bonjour,

Merci pour votre réponse qui m'aide bien.
Un petit détail cependant me chiffonne encore. Puis-je améliorer l'alignement des colonnes dands le fichier texte?
Voici ce que j'obtiens


1,44 1,43 1,38 3,67 3,93 1,28 ,43 ,22 ,42 1,58 2,31 3,93
Janv Fevr Mars Avri Mai Juin Juil Août Sept Octo Nove Déce
2,84 ,88 1,39 1,61 5,13 1,27 ,67 ,29 ,39 2,38 1,24 4,06
2,66 1,07 1,97 1,73 4,54 1,18 ,62 ,27 ,21 1,47 1,05 3,93
2,48 1,17 1,88 1,76 3,95 1,01 ,56 ,27 ,17 1,2 1,08 4,69
2,31 1,05 1,78 3,83 3,52 ,93 ,49 ,35 ,17 1,06 1,01 5,52
2,11 1,01 1,72 4,8 3,09 ,86 ,6 ,31 ,17 ,92 ,96 4,79
1,92 ,99 1,68 4,56 2,72 ,83 ,55 ,29 ,17 ,8 ,93 4,12
1,78 1,04 1,66 4,09 2,46 1,3 ,51 ,29 ,16 ,7 1,78 4,05
1,7 1,1 1,63 3,64 2,97 1,01 ,47 ,29 ,15 ,64 1,82 5,48
1,69 1,17 1,6 3,24 3,08 ,89 ,45 ,29 ,15 ,6 1,94 6,13
1,64 1,06 1,52 2,98 3,22 ,81 ,43 ,27 ,15 ,55 2,09 4,99
1,56 1,16 1,44 2,84 8,29 1,6 ,52 ,26 ,15 ,68 2,03 4,12
1,51 1,06 1,36 2,7 14, 2,52 ,51 ,24 ,15 ,7 2,01 3,41
1,46 1,1 1,31 2,56 10,8 2,58 ,5 ,25 ,15 ,74 2,43 2,88
1,41 1,08 1,27 2,42 8,54 2,33 ,47 ,27 ,18 ,93 2,96 2,56
1,36 1,15 1,22 2,29 6,89 2,15 ,47 ,26 ,17 1,66 3,11 2,3
1,32 1,24 1,18 2,29 5,47 1,97 ,5 ,22 ,16 4,17 2,83 2,15
1,27 1,19 1,13 3,1 4,2 1,8 ,47 ,22 ,14 3,09 2,59 2,
1,22 1,35 1,07 6,98 3,56 1,65 ,44 ,21 ,14 2,64 2,36 1,86
1,17 2,47 1, 6,13 3,13 1,49 ,42 ,19 ,13 2,4 2,13 1,75
1,12 2,45 ,93 5,28 2,83 1,34 ,39 ,17 ,28 2,16 2,17 1,63
1,07 2,27 ,96 4,47 2,56 1,23 ,36 ,15 ,42 1,92 2,21 1,54
1,03 2,18 ,95 3,84 2,33 1,13 ,32 ,18 ,37 2,31 2,06 1,84
,98 2,09 ,9 3,31 2,12 1,03 ,29 ,21 ,27 2,19 2,03 1,7
,93 2, ,87 3,82 1,91 ,94 ,28 ,19 ,22 2,1 2,49 1,72
,89 1,9 1,56 3,76 1,77 ,86 ,32 ,17 ,19 2,01 2,95 5,16
,87 1,77 1,26 3,44 1,65 ,85 ,32 ,16 ,19 1,86 3, 10,5
,84 1,63 1,62 3,16 1,54 ,85 ,42 ,13 ,18 1,71 3,9 8,25
,81 1,5 1,61 3,21 1,74 ,77 ,36 ,13 ,2 1,57 4,16 6,33
,83 1,62 6,72 1,38 ,69 ,32 ,13 ,17 1,43 4,18 4,99
1,07 1,53 5,59 1,34 ,68 ,3 ,14 6,88 1,3 4,06 4,07
,96 1,47 1,33 ,29 ,18 1,21 3,5
Merci d'avance.
 
Dernière édition:

Roland_M

XLDnaute Barbatruc
Re : transfert feuille dans document texte

re

comme ceci :

Code:
'Janvi  Fevri  Mars   Avril  ...
'01,44  01,43  00,00  00,00  ...

'pour ce qui est numérique
If IsNumeric(.Cells(i, j)) Then
   V$ = Format(.Cells(i, j).Value, "00.00") & "  " '2blancs
Else
   V$ = Left(.Cells(i, j) & Space(7, 7))
End If
'pour les mois
V$ = Left(.Cells(i, j) & Space(5), 5) & "  " '2blancs
 
Dernière édition:

Discussions similaires

Réponses
11
Affichages
375

Statistiques des forums

Discussions
312 683
Messages
2 090 914
Membres
104 695
dernier inscrit
akke