Imprimer la première page d'un fichier texte

Résolu
fabiendag - 10 juil. 2013 à 10:52
fabiendag Messages postés 21 Date d'inscription mercredi 30 janvier 2013 Statut Membre Dernière intervention 27 août 2013 - 11 juil. 2013 à 08:38
Bonjour à tous,
j'ai la commande suivante :
Shell "notepad.exe /P" & repertoire & "" & objfichier.Name, 1

qui me permet d'imprimer un fichier texte.
Est-il possible d'adapter cette commande pour n'imprimer que la première page du fichier ?

Fabien

11 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
10 juil. 2013 à 14:54
Tu l'ouvres (Open dans ton aide VBA) pour le lire (For INPUT) tyu lis les 40 1ères lignes (Line Input) que tu écris dans un fichier toto.txt ouvert (Open) en écriture (For Output)
Et tu imprimes toto.txt.
Allez ===>> on t'attend (essaye, au moins ... c'est facile)


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
3
fabiendag Messages postés 21 Date d'inscription mercredi 30 janvier 2013 Statut Membre Dernière intervention 27 août 2013
10 juil. 2013 à 15:50
Private Sub Valider_Click()
    Dim repertoire As String
    Dim objfso, objdossier, objfichier
    Dim x As Long
    
    x =  FindWindow("XLMAIN", Application.Caption)
    repertoire = " chemin du répertoire "
    Call Lire(repertoire, listecn.Value)
End Sub

Sub Lire(ByVal repertoire As String, ByVal nomfichier As String)
    Dim Chaine As String
    Dim NumFichier As Integer, lecture As Integer
    Dim fs As Object, fichier As Object
    Dim nomfichier2

    Set fs  = CreateObject("Scripting.FileSystemObject")
    Set fichier = fs.CreateTextFile((repertoire) + ("") + ("imprimer.txt"), True)
    NumFichier = FreeFile
    nomfichier2 = repertoire & "" & nomfichier & ".cn"
    Open nomfichier2 For Input As #NumFichier
    For lecture = 1 To 50
        Line Input #NumFichier, Chaine
        fichier.writeline Chaine
    Next lecture
    Close #NumFichier
    Shell "notepad.exe /P" & repertoire & "\imprimer.txt", 1
End Sub


Ce programme imprime les 50 premières lignes d'un fichier texte choisi dans une liste déroulante appelé ici "listecn"
Fabien
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
10 juil. 2013 à 16:42
Oui, mais tu as du coup trinqué définitivement ton fichier !
Faut pas !
Open "d:\a.text" For Input As #1
Open "d:\b.text" For Output As #2
 Do While Not EOF(1) And cpt < 50
  Line Input #1, titi
  Print #2, titi
  cpt = cpt + 1
 Loop
 Close #1: Close #2

ou encore (plus rigolo) :
Dim FF As Integer, titi
 FF = FreeFile
 Open "d:\atoto.text" For Input As #FF
   strtext = Input(LOF(FF), #FF)
 Close #FF
 titi = Split(strtext, Chr(10))
 ReDim Preserve titi(49)
 Open "d:\btoto.text" For Output As #FF
   Print #FF, Join(titi, Chr(10))
 Close #FF




________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
10 juil. 2013 à 20:13
C'est que les touches de mon clavier sont presque illisible (sel + sable + ciment quelquefois) et que le i et le o sont côte à côte
lire tronqué

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
10 juil. 2013 à 10:59
Bonjour,*
Qu'appelles-tu exactement une "page" d'un fichier texte écrit par notepad ?


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
En fait il faudrait que j'imprime les 40 premières lignes pour essayer de faire plus simple.
Sinon je reconnais qu'une page ne veut pas dire grand chose, car cela change en fonction de la taille de la police... entre autre.
Fabien
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
10 juil. 2013 à 12:14
Le plus simple (si tu veux utiliser ta commande shell), est alors de copier les 40 premières lignes dans un autre fichier, auquel tu appliques ta commande shell (telle que plus haut).


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
fabiendag Messages postés 21 Date d'inscription mercredi 30 janvier 2013 Statut Membre Dernière intervention 27 août 2013
10 juil. 2013 à 13:32
ok ucfoutu merci beaucoup
je vais essayer comme ca (faut juste que je retrouve la méthode pour copier un fichier texte lol)


Fabien
0
fabiendag Messages postés 21 Date d'inscription mercredi 30 janvier 2013 Statut Membre Dernière intervention 27 août 2013
10 juil. 2013 à 14:57
oui oui ucfoutu, je suis en train de le faire... je vous copie mon code dès que j'ai fini de le taper :p


Fabien
0
fabiendag Messages postés 21 Date d'inscription mercredi 30 janvier 2013 Statut Membre Dernière intervention 27 août 2013
10 juil. 2013 à 16:45
euh... tu veux dire koi par "trinqué définitivement ton fichier" ?


Fabien
0
fabiendag Messages postés 21 Date d'inscription mercredi 30 janvier 2013 Statut Membre Dernière intervention 27 août 2013
11 juil. 2013 à 08:38
bonjour ucfoutu,
mon fichier n'est pas tronqué justement, j'ai toujours mon fichier d'origine et le programme m'imprime le nouveau fichier texte qui contient les 40 premières lignes du fichier d'origine. Ces lignes sont toujours présentent dans le fichier d'origine. Le programme en fait juste une copie


Fabien
0
Rejoignez-nous