IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Difficultés à manipuler la fonction print#


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2011
    Messages : 75
    Par défaut Difficultés à manipuler la fonction print#
    Bonjour à tous, et merci pour toute votre aide. La vie de stagiaire en entreprises est dure !

    Je vous contacte pour une macro conséquente, qui dans une BDD réalise des tests (date maximum dans colonne A, date minimum dans colonne B, etc..)

    Je déroule ces différents tests dans une seule boucle, et pour chacun je stocke l'indice de la ligne correspondante au test.

    Ensuite, à l'aide de la fonction print, je fais une sortie txt sans délimiteur.

    Cependant, je voudrais que dans un seul fichier texte, l'ensemble des lignes répondant aux différents tests apparaissent.

    C'est à dire un fichier de la forme :

    Test 1 réalisé pour 2 individus
    Ligne 1
    Ligne 2

    Test 2 réalisé pour 2 individus
    Ligne 1
    Ligne 2

    etc..

    Pour le moment, voici une portion de ma fonction print :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    For I = 1 To nbtests
     
    Print #1, Left(Range("A" & tab_dates_compta_max(I, 2)).Text, 10) & Space(10 - Len(Left(Range("A" & tab_dates_compta_max(I, 2)).Text, 10)))
     
    next I
    Close #1
    Merci pour votre aide !

    Edit : Correction

  2. #2
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Bonjour julio44,

    Tu bloques a quel endroit?

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2011
    Messages : 75
    Par défaut
    bonjour jfontaine,

    Et bien je ne sais pas faire le lien entre le test 1 et le test 2.
    Je n'arrive pas à faire la distinction entre les & et les ; dans l'instruction print également.
    En effet, je souhaiterais "mettre en page" la sortie texte.

  4. #4
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Pour avoir dans le fichier de sortie tous les tests 1 puis tous les test 2, tu peux faire 2 passes sur ton fichier source


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    Print #1, "Test 1"
    For I = 1 To nbtests
    if Condition 1 then
       Print #1, Left(Range("A" & tab_dates_compta_max(I, 2)).Text, 10) & Space(10 - Len(Left(Range("A" & tab_dates_compta_max(I, 2)).Text, 10)))
    end if
    next I
     
    Print #1, "Test 2"
    For I = 1 To nbtests
    if condition 2 then
        Print #1, Left(Range("A" & tab_dates_compta_max(I, 2)).Text, 10) & Space(10 - Len(Left(Range("A" & tab_dates_compta_max(I, 2)).Text, 10)))
    end if
    next I
     
    Close #

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2011
    Messages : 75
    Par défaut
    ça fonctionne, merci beaucoup !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 05/09/2006, 11h42
  2. Fonction print avec les propriétés d'impression
    Par Alexandrebox dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 24/08/2006, 12h30
  3. php5: difficulté avec la fonction header
    Par koueletbak dans le forum Langage
    Réponses: 2
    Dernier message: 02/05/2006, 19h44
  4. [VBA-E] problème avec la fonction print#
    Par phoon dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 08/03/2006, 09h51
  5. [VB.NET] Difficulté de construction... fonction IIF
    Par Pleymo dans le forum Windows Forms
    Réponses: 4
    Dernier message: 09/02/2005, 21h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo