Imprimer la première page d'un fichier texte [Résolu]

- - Dernière réponse : 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
Afficher la suite 

11 réponses

Meilleure réponse
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
3
Merci
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.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 186 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ucfoutu
Messages postés
21
Date d'inscription
mercredi 30 janvier 2013
Statut
Membre
Dernière intervention
27 août 2013
3
Merci
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

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 186 internautes nous ont dit merci ce mois-ci

Commenter la réponse de fabiendag
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
3
Merci
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.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 186 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
3
Merci
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.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 186 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
0
Merci
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.
Commenter la réponse de ucfoutu
0
Merci
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
Commenter la réponse de fabiendag
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
0
Merci
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.
Commenter la réponse de ucfoutu
Messages postés
21
Date d'inscription
mercredi 30 janvier 2013
Statut
Membre
Dernière intervention
27 août 2013
0
Merci
ok ucfoutu merci beaucoup
je vais essayer comme ca (faut juste que je retrouve la méthode pour copier un fichier texte lol)


Fabien
Commenter la réponse de fabiendag
Messages postés
21
Date d'inscription
mercredi 30 janvier 2013
Statut
Membre
Dernière intervention
27 août 2013
0
Merci
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
Commenter la réponse de fabiendag
Messages postés
21
Date d'inscription
mercredi 30 janvier 2013
Statut
Membre
Dernière intervention
27 août 2013
0
Merci
euh... tu veux dire koi par "trinqué définitivement ton fichier" ?


Fabien
Commenter la réponse de fabiendag
Messages postés
21
Date d'inscription
mercredi 30 janvier 2013
Statut
Membre
Dernière intervention
27 août 2013
0
Merci
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
Commenter la réponse de fabiendag