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

VBA Access Discussion :

insére une image dans un formulaire et l'image sur le serveur


Sujet :

VBA Access

  1. #1
    Débutant  
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 745
    Points : 202
    Points
    202
    Par défaut insére une image dans un formulaire et l'image sur le serveur
    bonjour
    je vien de crée un formulaire ou dedans je souhaite insére une image qui correspond a l'enregistrement en cour. Pour sa j'ai trouve un code sur le net et j'ai pu l'adapté a ce que je voulai. Donc il marche trés bien, mais maintenant je souhaite que les images ajoute soit stock sur le reseau et non pas dans le dossier '\images' qui ce trouve sur le poste local. donc il faut que quand on ouvre un formulaire l'image soit récupere sur le serveur et quand on insére une image le chemin pour trouve l'image soit sur le reseau et non en local.
    voila le code que j'ai actuellement merci de votre aide

    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    Private Sub btnInserer_Click()
     
    'Déclaration des variables
    Dim strFichier As String
    Dim oFD As FileDialog
     
    'Paramètre la fenêtre Ouvrir
    Set oFD = Application.FileDialog(msoFileDialogOpen)
    With oFD
        'Ajoute les filtres pour fichiers images et tous
        With .Filters
            .Clear
            .Add "Fichiers images", "*.jpg;*.jpeg;*.bmp;*.gif", 1
            .Add "Tous", "*.*", 2
        End With
        'Renseignement du titre
        .Title = "Insérer une image"
        'Ouvre l'explorateur dans le fichier 'Mes documents' du User connecté.
        .InitialFileName = "C:\"
        'Interdit la multi sélection
        .AllowMultiSelect = False
        'Permet de choisir le mode d'affichage dans l'explorateur (ici apperçu)
        .InitialView = msoFileDialogViewThumbnail
        'Permet de personnaliser le bouton.
        .ButtonName = "Insérer"
     
        'Affiche la fenêtre
        If .Show Then
            On Error GoTo fini  'gestion erreur pour control importation
     
            'Retourne un erreur si pas fichier image.
            Me.Image1.Picture = .SelectedItems(1)
            'Vide du cadre image.
            Me.Image1.Picture = ""
            'Extraction du nom du fichier à copier.
            strFichier = Mid(.SelectedItems(1), InStrRev(.SelectedItems(1), "\"))
            'Copie du fichier sélectionné vers le sous dossier de la base.
            FileCopy .SelectedItems(1), CurrentProject.Path & "\images" & strFichier
            'Chargement dans control du chemin de l'image (sous dossier base).
            Me.Photos = CurrentProject.Path & "\images" & strFichier
            'Rafraîchit le Formulaire.
            Me.Refresh
     
        End If
    End With
    Exit Sub
     
    fini:
     
        Select Case Err
     
            Case 2220
     
                MsgBox "L'importation du fichier ne s'est pas effectué normalement.", _
                    vbCritical, "Erreur fichier Image"
     
            Case Else
     
                MsgBox Err.Number & Chr(13) & Err.Description
     
        End Select
     
    End Sub

  2. #2
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonjour,

    Pour modifier l'emplacement que la boîte de dialogue va explorer, tu modifie cette ligne
    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        'Ouvre l'explorateur dans le fichier 'Mes documents' du User connecté.
        .InitialFileName = "C:\"
    Remplace "C:\" par ton chemin réseau.
    "\\NomServeur\....." ou "U:\...." si un lecteur réseau existe.

    Pour l'emplacement de sauvegarde du fichier image tu modifie ces lignes
    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            'Copie du fichier sélectionné vers le sous dossier de la base.
            FileCopy .SelectedItems(1), CurrentProject.Path & "\images" & strFichier
            'Chargement dans control du chemin de l'image (sous dossier base).
            Me.Photos = CurrentProject.Path & "\images" & strFichier
    Tu remplace CurrentProject.Path & "\images" par ton chemin réseau.
    Ex : "\\NomServeur\Shared\MonDossier\MonAppli\MesImages"

    Tu peux mettre ces chemins dans des variables pour plus de souplesse.
    Code vb : 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
    Private Sub btnInserer_Click()
     
    'Déclaration des variables
    Dim strFichier As String
    Dim strCheminSce As String, strCheminDest As String
    Dim oFD As FileDialog
     
    strCheminSce = "\\NomServeur\Shared\Images" 
    strCheminDest = "\\NomServeur\Shared\MonDossier\MonAppli\MesImages"
    ...
     
        'Ouvre l'explorateur dans le fichier 'Mes documents' du User connecté.
        .InitialFileName = strCheminSce
    ...
            'Copie du fichier sélectionné vers le sous dossier de la base.
            FileCopy .SelectedItems(1), strCheminDest & strFichier
            'Chargement dans control du chemin de l'image (sous dossier base).
            Me.Photos = strCheminDest & strFichier
    ...

    Voila j'espère que ça répond à ta question
    A+

  3. #3
    Débutant  
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 745
    Points : 202
    Points
    202
    Par défaut
    salut merci pour ta reponse et desole de te repondre que maintenant mais je n'ai pu faire l'essai avant
    j'ai mis sa comme tu ma dis
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    Private Sub btnInserer_Click()
     
    'Déclaration des variables
    Dim strFichier As String
    Dim oFD As FileDialog
     
    'Paramètre la fenêtre Ouvrir
    Set oFD = Application.FileDialog(msoFileDialogOpen)
    With oFD
        'Ajoute les filtres pour fichiers images et tous
        With .Filters
            .Clear
            .Add "Fichiers images", "*.jpg;*.jpeg;*.bmp;*.gif", 1
            .Add "Tous", "*.*", 2
        End With
        'Renseignement du titre
        .Title = "Insérer une image"
        'Ouvre l'explorateur dans le fichier 'Mes documents' du User connecté.
        .InitialFileName = "C:\"
        'Interdit la multi sélection
        .AllowMultiSelect = False
        'Permet de choisir le mode d'affichage dans l'explorateur (ici apperçu)
        .InitialView = msoFileDialogViewThumbnail
        'Permet de personnaliser le bouton.
        .ButtonName = "Insérer"
     
        'Affiche la fenêtre
        If .Show Then
            On Error GoTo fini  'gestion erreur pour control importation
     
            'Retourne un erreur si pas fichier image.
            Me.Image1.Picture = .SelectedItems(1)
            'Vide du cadre image.
            Me.Image1.Picture = ""
            'Extraction du nom du fichier à copier.
            strFichier = Mid(.SelectedItems(1), InStrRev(.SelectedItems(1), "\"))
            'Copie du fichier sélectionné vers le sous dossier de la base.
            FileCopy .SelectedItems(1), CurrentProject.Path & "\images" & strFichier
            'Chargement dans control du chemin de l'image (sous dossier base).
            Me.Photos = "\\Serveurxp\ACCESBASESTAGNE\BASETABLE\images" & strFichier
            'Rafraîchit le Formulaire.
            Me.Refresh
     
        End If
    End With
    Exit Sub
    mais quand le clique sur mon bouton insére tout marche je cherche l'image et quand je fait ok pour l'insére il me dis "76 chemin d'accès introuvable"
    que doite je faire?

  4. #4
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonsoir,

    tu n'as pas fait exactement comme moi.

    Dans ton code tu copies l'image dans CurrentProject.Path & "\images" & strFichier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FileCopy .SelectedItems(1), CurrentProject.Path & "\images" & strFichier
    Ensuite tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Photos = "\\Serveurxp\ACCESBASESTAGNE\BASETABLE\images" & strFichier
    Si ta base n'est pas dans \\Serveurxp\ACCESBASESTAGNE\BASETABLE ça ne marche pas.

    Ca devrait être mieux avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FileCopy .SelectedItems(1), "\\Serveurxp\ACCESBASESTAGNE\BASETABLE\images\images" & strFichier
    A+

  5. #5
    Débutant  
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 745
    Points : 202
    Points
    202
    Par défaut
    merci bcp sa marche super bien encore merci

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

Discussions similaires

  1. afficher une image dans un formulaire jsp
    Par samia13 dans le forum Servlets/JSP
    Réponses: 13
    Dernier message: 11/04/2007, 11h14
  2. Et pour une deuxième image dans un formulaire ?
    Par Monbasinstinct dans le forum IHM
    Réponses: 4
    Dernier message: 22/09/2006, 15h54
  3. Affichage d'une image dans un formulaire.
    Par ludolan dans le forum IHM
    Réponses: 4
    Dernier message: 09/09/2006, 18h43
  4. faire une mosaique d'image dans un formulaire
    Par db48752b dans le forum IHM
    Réponses: 17
    Dernier message: 05/09/2006, 13h55
  5. insérer une image dans un formulaire
    Par roms1 dans le forum IHM
    Réponses: 5
    Dernier message: 23/11/2005, 16h27

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