Commondialog VB (afficher fichier)

mamanou -  
 mikl -
salut tous le monde
je souhaite ouvrir un fichier en utilisant un commondialog sous VB.
comment faire?
nb:je n'ai jamais programmer en VB .
merci pour votre aide

4 réponses

  1. mikl
     
    cette partie de code recupere le chemin d'un fichier dans filepath et lit le fichier text pour afficher son contenu dans une list box

    il faut ajouter la commande commondialog sur le form ou il y a le bouton.

    Private Sub Command2_Click()

    Dim fs As Object
    Dim Rep As Integer, Filenumber As Integer
    Dim filepath As String, TMPligne As String
    Dim Ext As Variant

    Set fs = CreateObject("Scripting.FileSystemObject")

    filepath = FiletoOpen(CommonDialog1, App.Path, True, "Fichier à charger", cdlOFNHideReadOnly, "Fichiers (*.txt)|*.txt", 2)
    If filepath <> "" Then
    Ext = Extension(filepath)
    'MsgBox (Ext)
    If LCase(Ext) = "txt" Then
    If fs.FileExists(filepath) Then
    Filenumber = FreeFile ' Lit le numéro de fichier inutilisé.
    ' Crée le nom du fichier.
    Open filepath For Input As #Filenumber
    Do While Not EOF(Filenumber)
    Line Input #Filenumber, TMPligne
    List1.AddItem (TMPligne)
    Loop
    Close #Filenumber ' Ferme le fichier.
    Else
    Rep = MsgBox("Le fichier " & filepath & " n'existe pas Veuillez choisir un autre fichier", vbCritical, "Erreur")
    End If
    Else
    Rep = MsgBox("Le format du fichier est incorrecte veuillez choisir un fichier Excel", vbCritical, "Erreur")
    End If
    End If
    End Sub

    bye

    mickael
    1
  2. mickl
     
    z'avais oublier cette fonction desoler!!!

    Public Function FiletoOpen(Commondial As CommonDialog, inipath As Variant, Optional varCancelError As Boolean, Optional title As String, Optional flag As Variant, Optional filtr As String, Optional filtridx As Integer, Optional ObjetBox As Object) As String

    Commondial.CancelError = varCancelError ' Attribue à CancelError la valeur True
    On Error GoTo ErrHandler
    Commondial.DialogTitle = title ' Définit le titre de la fenêtre
    Commondial.Flags = flag ' Définit la propriété Flags
    Commondial.InitDir = inipath ' Chemin Initial
    Commondial.Filter = filtr ' Définit les filtres
    Commondial.FilterIndex = filtridx ' Définit le filtre par défaut
    Commondial.ObjetBox ' Affiche la boîte de dialogue Ouverture
    ' Enregistrement du Chemin Selectionné
    FiletoOpen = Commondial.FileName

    ErrHandler:
    'L'utilisateur a cliqué sur Annuler
    End Function
    0
  3. mickl
     
    Encore une boulette à la place de cette ligne :

    Commondial.ObjetBox ' Affiche la boîte de dialogue Ouverture

    mettre cette ligne

    Commondial.ShowOpen

    dsl c'est la fin de semaine
    0
  4. josavoi Messages postés 3 Statut Membre
     
    bonsoir ,
    Au secours , je travaille en ce moment sur une application d'envoin d'un mail et je souhaite joindre des fichiers (.xls,.doc,.zip) à mon mail avant de l'envoyer via outlook. je ne sais comment faire pour joindre les fichiers, à l'aide s'il vous plait.
    autre chose , je ne sais si c'est possible d'extraire des données ( requêtes) dans une base sql et de les afficher dans un form dans des textbox distinct ou même dans un seul textbox. svp svp aidez moi , ça fait longtemps que je cherche une solution.
    merci d'avance
    0
    1. mikl
       
      Bonjour Josavoi,

      Alors en ce qui concerne ta première demande pour attacher un fichier à un mail, en règle générale il faut que tu ouvre ton fichier en binaire que tu l'encode en base 64 et (il me semble) que tu en face des lignes d'une certaine longueur (troncature) . Tu place ca dans une section attachement dans ton mail à la suite du corps du message. Tu dois obtenir ainsi quelque chose sous format text un peu comme ceci :

      To:xxxxxx@agencemultiservices.eu
      Subject: Fw:
      Date: Sat, 4 Apr 2009 00:00:09 +0200
      MIME-Version: 1.0
      Content-Type: multipart/mixed;
      boundary="----=_NextPart_000_005A_01C9B4B8.51BB95C0"
      X-Priority: 3
      X-MSMail-Priority: Normal
      X-Mailer: Microsoft Outlook Express 6.00.2800.1807
      X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1807
      X-me-spamlevel: not-spam
      X-me-spamrating: 34.000000
      X-me-spamcause: OK, (-150)(0000)
      X-Antivirus: avast! (VPS 090424-0, 24/04/2009), Inbound message
      X-Antivirus-Status: Clean


      This is a multi-part message in MIME format.

      ------=_NextPart_000_005A_01C9B4B8.51BB95C0
      Content-Type: multipart/alternative;
      boundary="----=_NextPart_001_005B_01C9B4B8.51BB95C0"


      ------=_NextPart_001_005B_01C9B4B8.51BB95C0
      Content-Type: text/plain;
      charset="iso-8859-1"
      Content-Transfer-Encoding: quoted-printable

      ici le texte du corps du message sous format text


      ------=_NextPart_001_005B_01C9B4B8.51BB95C0
      Content-Type: text/html;
      charset="iso-8859-1"
      Content-Transfer-Encoding: quoted-printable

      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
      <HTML><HEAD><TITLE>Flashmail</TITLE>
      <META http-equiv=3DContent-Type content=3D"text/html; =
      charset=3Diso-8859-1">
      <STYLE type=3Dtext/css>BODY {
      PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
      0px; PADDING-TOP: 0px
      }
      TABLE {
      PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
      0px; PADDING-TOP: 0px
      }
      TR {
      PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
      0px; PADDING-TOP: 0px
      }
      TD {
      PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
      0px; PADDING-TOP: 0px
      }
      P {
      PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
      0px; PADDING-TOP: 0px
      }
      BODY {
      BACKGROUND: #ffffff
      }
      </STYLE>

      <META content=3D"MSHTML 6.00.2800.1561" name=3DGENERATOR></HEAD>
      <BODY bgColor=3D#ffffff>
      <DIV><FONT face=3DArial size=3D2></FONT> </DIV>
      <DIV style=3D"FONT: 10pt arial">
      </DIV></DIV>
      <DIV><FONT face=3DArial size=3D2></FONT><BR></DIV>
      <DIV><FONT face=3DArial size=3D2>ici le texte du corps du message sous format html</FONT> </DIV>
      <STYLE>
      </STYLE>

      </BODY></HTML>

      ------=_NextPart_001_005B_01C9B4B8.51BB95C0--

      ------=_NextPart_000_005A_01C9B4B8.51BB95C0
      Content-Type: application/vnd.ms-powerpoint;
      name="=?iso-8859-1?Q?=EAtes-vous_b=EAtes-.pps?="
      Content-Transfer-Encoding: base64
      Content-Disposition: attachment;
      filename="=?iso-8859-1?Q?=EAtes-vous_b=EAtes-.pps?="

      0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAABJAAAA4yMAAAAAAAAA
      EAAA5iMAAAEAAAD+////AAAAAOsjAADsIwAA7SMAAO4jAADvIwAA8CMAAPEjAADyIwAA8yMAAPQj
      AAD1IwAA9iMAAPcjAAD4IwAA+SMAAPojAAD7IwAA/CMAAP0jAAD+IwAA/yMAAAAkAAABJAAAAiQA
      AAMkAAAEJAAABSQAAAYkAAAHJAAACCQAAAkkAAAKJAAACyQAAAwkAAANJAAADiQAAA8kAAAQJAAA
      ESQAABIkAAATJAAAFCQAABUkAAAWJAAAFyQAABgkAAAZJAAAGiQAABskAAAcJAAAHSQAAB4kAAAf
      JAAAICQAACEkAAAiJAAAIyQAACQkAAAlJAAAJiQAACckAAAoJAAAKSQAACokAAArJAAALCQAAC0k
      AAAuJAAALyQAADAkAAAxJAAA5CMAAOUjAAD/////////////////////////////////////////
      ////////////////////////////////////////////////////////////////////////////
      //////////////////////////////////////////////////////////////////////////+g
      Rh3weNcAACDFde0w8LELfJORhWAKGKb//9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAE
      AAAAPAAA/+4AJkFkb2JlAGTAAAAAAQMAFQQDBgoNAAAruAAAMKcAAGebAADXZf/bAIQABgQEBAUE
      BgUFBgkGBQYJCwgGBggLDAoKCwoKDBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8f
      HwEHBwcNDA0YEBAYGhURFRofHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f
      Hx8fHx8fHx8f/8IAEQgCHALQAwERAAIRAQMRAf/EANEAAAMBAQEBAQAAAAAAAAAAAAABAgMEBwYF
      AQEBAQEBAQEAAAAAAAAAAAAAAQIDBAUGEAACAQQCAgEEAgICAwEAAAAAEQEQIQISIBMiAzBAUGAx
      QSNwgAQUkKAyJBEAAQMBBQYEBAUDBQAAAAAAAAEhMRAgMBFBMkBQUZECImFxgaFgcLES8NHhAzOA
      8ULBUnKSIxIBAAAAAAAAAAAAAAAAAAAAwBMAAwABAwMDBAIDAQEBAQAAAAERIRAxQVFhcSCBkTCh
      scHR4UBQ8PFgcID/2gAMAwEAAhEDEQAAAeT6XNgMYDECKkMCaiguNIvNqLhiAYQqmkZ1nokiopwG
      ACAQAOKl1w0xf1eGgApxQ4oqGIKkVTQONI1xdYqHLUKosipqaizHSNTOsNzHSaRNmejEZak
      G86rHUmyVy1UuduNRWWmZFmVuWuc252TLNTZBNRULNRQsUiaQE25rGiUhVnaBUyscKhSGOUJpAI
      KkctAZ2OW4KIcTojTK5QBiERYqBDgq80QWhiGJGqT2H5PmDPVzqUx0ixVhq51kZ6uVmaTbmRqQTU
      iIqTPSVRNskk0lBLFRSWKzpqQlKQDlYBKAAEipAqsUrFSHFRNFXki40lYRNAibJURiHKygKgCmAo
      nU9f+X5Ai3PUSSuWmVmdY6uVkVlUNRUEkVJIjLQIXPRSxQKiVE1GilztkiptcTTWQlYDhDWhRNOV
      WTQEsUAAQDKCGBUqrSFDMtKhUhAAyoAKgGIoBV6187w56jM7MdXOxEW5WxUNZVKwZ1NmVSQKkZqL
      lUiVVJKyArZsTWZNsCpKgAKJWOBXDhKqCCaBCGSMoAAQFyuFVxFBRMFOJpxNVDEXBVQCGAV6r4vm
      5bQXNTNTWWmaZ3UpjbnWdZ1mSZ1KlIUpGeiWKmWVikClRErFRStRKzRmllKhAVLNVDlIVIVSTQIQ
      wCEFUAQFK4qAZJNIVIZUSMcUFOAoAh16X5vnXK1ztZ

      ------=_NextPart_000_005A_01C9B4B8.51BB95C0--


      Je pense qu'ensuite il te suffit de donner l'extension .eml pour pourvoir lire le mail dans outlook par exemple.

      Pour ta deuxieme question oui c'est tout a fais possible.

      Voila J'espere que ce message va t'aider et que j'ai été suffisament clair.

      Bon courage

      Mikl
      0