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

VB 6 et antérieur Discussion :

[VB6]impression d'états


Sujet :

VB 6 et antérieur

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut [VB6]impression d'états
    bonjour,
    j'ai developpé une appli sous vb6 qui gere une base de donnée Access 97. Maintenant je voudrais creer des etats issus de requetes SQL.Et la je bug, j'ai essayé le controle data environnement je crois, avec le data report que j'ai trouvé dans le MSDN mais il me dit que l'etat est trop large pour le papier...
    Alors est ce que je pourrais appeller des etats créés sous access dans mon code vb, sur le click d'un boutton par ex?ou alor quelqu'un pourrait il me donner des explications sur la création d'états sous vb?
    merci bien
    ++

    déplacé par khayyam90

  2. #2
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Regardes dans l'aide en ligne l'objet Printer et sa propriété Zoom

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Points : 12
    Points
    12
    Par défaut
    bonjour
    est ce que vous avez resolu votre probleme sinon dite le pour vous envoyer la solution ok
    bon courage a tous

  4. #4
    Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 135
    Points : 69
    Points
    69
    Par défaut
    Je te conseil de créer tes etats en access, puis de les appeler à partir de ton appli VB. Access permet de faire de tres bons état en comparaison à visual basic ou autres surtout si tu as ta base en access

    Voici un exemple pour appelé un etat access à partir de VB

    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
    17
    18
    19
    20
    21
    22
     
    Dim Mode As Integer
    Dim rep As Integer
    Dim Wp As String
    Dim Monetat As New Access.Application
    Dim nbcaractere As Integer
    Dim winreg As New WinRegPath
    Dim StrCmd As String
    Dim accesspath As String
     
    'Lance l'impression
    rep = MsgBox("Voulez-vous un apperçu ?", vbYesNoCancel + vbExclamation, "Impression")
            If rep <> vbCancel Then
                etat = 'NOM DE TON ETAT ACCESS
                Mode = IIf(rep = vbYes, acViewPreview, acViewNormal)
                Wp = 'TA REQUERE
                winreg.Load HKEY_LOCAL_MACHINE, StrOfficeReg
                StrCmd = " /Cmd """ & etat & "|" & Wp & "|" & Mode & """"
                accesspath = NoZ(winreg.GetAttributValue("Path", ""), "") & "MSACCESS.EXE " & StrDbReport & StrCmd
                appid = Shell(accesspath, vbMinimizedFocus)
                apphandle = OpenProcess(&H400&, False, appid&)
            End If

    SOUS ACCCESS :


    Crée un module Edition avec la fonction Main :

    Recupère nom etat et requete (envoyer sous VB)

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    Public Function Main()
    Dim StrCmd As String
    Dim Etat   As String
    Dim FILTRE As String
    Dim pos    As Long
    Dim pos2   As Long
    Dim tot    As Integer
     
        StrCmd = Command()
        Set CurDB = CurrentProject.Connection
     
     
        pos = InStr(1, StrCmd, "|", vbBinaryCompare)
        If pos > 0 Then
            Etat = Left(StrCmd, pos - 1)
            FILTRE = Mid(StrCmd, pos + 1)
            End If
            End If
     
            DoCmd.OpenReport Etat, acViewPreview, , FILTRE
            DoCmd.Maximize
     
            ShowWindow Application.hWndAccessApp, SW_MAXIMIZE
        End If
     
     
    End Function

    Il te faut également 2 macros en Access :

    Une AutoExec qui execute automatiquement la fonction Main au demarrage

    Une QuitApp qui execute la commande quitter


    Je crois que j'ai rien oublié a+

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    yesss!merci sa résoud mon pbm,en effet je suis sous access 97!!

Discussions similaires

  1. Impression d'états sous VB6
    Par joss56 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 15/04/2008, 18h02
  2. Pb impression d'état crystal report sous vb6
    Par djbouni dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 10/12/2007, 16h06
  3. [CR][VB6] Impression d'un état depuis VB
    Par sda dans le forum SDK
    Réponses: 3
    Dernier message: 06/02/2007, 17h27
  4. Impression d'état CR10 depuis VB6
    Par mcrocher dans le forum SDK
    Réponses: 1
    Dernier message: 07/09/2005, 09h31
  5. [VB6] [Impression] Taille de l'image imprimée
    Par SpaceFrog dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 24/10/2002, 09h11

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