Autres Image pour Base de donnée

Jacko17

XLDnaute Nouveau
Bonjour à tous,

j'essaye de faire un fichier avec des articles détaillés et illustré par ligne, a l'aide de tuto et de quelques conseils sur le forum.
j'ai réussi à faire un formulaire, qui me permet de créer une base de donnée d'articles, et à sélectionner une image sur le formulaire.

Mon souci est que, je n'arrive pas à insérer une image sur la colonne G a chaque ajout d'articles.

Pourriez-vous m'aider s'il vous plait ?
 

Pièces jointes

  • ListeTest.xlsm
    49.1 KB · Affichages: 28
Solution
Bonjour,
Essayez le code modifié suivant dans votre userform pour le bouton ajouter
VB:
Private Sub CommandButton1_Click()
Dim NomImg As String
Dim dl As Integer

If Me.Txt_nom <> "" And Me.Txt_description <> "" And Me.Txt_prix <> "" And Me.Txt_min <> "" Then
    [Tableau9].ListObject.ListRows.Add
    dl = [Tableau9].ListObject.ListRows.Count
 
   'ajouter dans le tableau
   [Tableau9].Cells(dl, 1) = Me.Txt_nom
   [Tableau9].Cells(dl, 2) = Me.Labe_info.Caption
   [Tableau9].Cells(dl, 3) = Me.Cbx_Natures
   [Tableau9].Cells(dl, 4) = Me.Txt_description
   [Tableau9].Cells(dl, 5) = Me.Cbx_activite
   [Tableau9].Cells(dl, 7) = CCur(Me.Txt_prix)
   [Tableau9].Cells(dl, 9) = CInt(Me.Txt_min)
   [Tableau9].Cells(dl, 12) = "Active"

  'ajouter Image
    [Tableau9].Cells(dl, 6).Select
    With...

fanch55

XLDnaute Barbatruc
Bonjour,
Essayez le code modifié suivant dans votre userform pour le bouton ajouter
VB:
Private Sub CommandButton1_Click()
Dim NomImg As String
Dim dl As Integer

If Me.Txt_nom <> "" And Me.Txt_description <> "" And Me.Txt_prix <> "" And Me.Txt_min <> "" Then
    [Tableau9].ListObject.ListRows.Add
    dl = [Tableau9].ListObject.ListRows.Count
 
   'ajouter dans le tableau
   [Tableau9].Cells(dl, 1) = Me.Txt_nom
   [Tableau9].Cells(dl, 2) = Me.Labe_info.Caption
   [Tableau9].Cells(dl, 3) = Me.Cbx_Natures
   [Tableau9].Cells(dl, 4) = Me.Txt_description
   [Tableau9].Cells(dl, 5) = Me.Cbx_activite
   [Tableau9].Cells(dl, 7) = CCur(Me.Txt_prix)
   [Tableau9].Cells(dl, 9) = CInt(Me.Txt_min)
   [Tableau9].Cells(dl, 12) = "Active"

  'ajouter Image
    [Tableau9].Cells(dl, 6).Select
    With ActiveSheet.Pictures.Insert(NDFPhoto)
        .ShapeRange.LockAspectRatio = msoFalse
        .Placement = xlMoveAndSize ' Important sinon l'image reste si la ligne est supprimée
        .Height = .TopLeftCell.Height
        .Width = .TopLeftCell.Width
    End With
   Sheets("CONFIG").Range("d19") = Sheets("CONFIG").Range("d19") + 1
 
   ThisWorkbook.Save
 
   Unload Add_article
 
End If

End Sub
 

Jacko17

XLDnaute Nouveau
Bonjour,
Essayez le code modifié suivant dans votre userform pour le bouton ajouter
VB:
Private Sub CommandButton1_Click()
Dim NomImg As String
Dim dl As Integer

If Me.Txt_nom <> "" And Me.Txt_description <> "" And Me.Txt_prix <> "" And Me.Txt_min <> "" Then
    [Tableau9].ListObject.ListRows.Add
    dl = [Tableau9].ListObject.ListRows.Count
 
   'ajouter dans le tableau
   [Tableau9].Cells(dl, 1) = Me.Txt_nom
   [Tableau9].Cells(dl, 2) = Me.Labe_info.Caption
   [Tableau9].Cells(dl, 3) = Me.Cbx_Natures
   [Tableau9].Cells(dl, 4) = Me.Txt_description
   [Tableau9].Cells(dl, 5) = Me.Cbx_activite
   [Tableau9].Cells(dl, 7) = CCur(Me.Txt_prix)
   [Tableau9].Cells(dl, 9) = CInt(Me.Txt_min)
   [Tableau9].Cells(dl, 12) = "Active"

  'ajouter Image
    [Tableau9].Cells(dl, 6).Select
    With ActiveSheet.Pictures.Insert(NDFPhoto)
        .ShapeRange.LockAspectRatio = msoFalse
        .Placement = xlMoveAndSize ' Important sinon l'image reste si la ligne est supprimée
        .Height = .TopLeftCell.Height
        .Width = .TopLeftCell.Width
    End With
   Sheets("CONFIG").Range("d19") = Sheets("CONFIG").Range("d19") + 1
 
   ThisWorkbook.Save
 
   Unload Add_article
 
End If

End Sub


Bonsoir,

merci beaucoup pour votre aide,
ça fonctionne.

Une petite question : au moment d'ajouter les informations dans le tableau, il y a un temps d'attente. Pensez-vous que c'est dû à la taille de l'image ?
 

herve62

XLDnaute Barbatruc
Supporter XLD
Bonsoir
Voilà encore la coïncidence il y a qq années j'ai commencé à aider un membre d'ici puis terminé en privé pour lui fournir le fichier joint
Il y a le traitement de l'image pour insertion dans Excel mais pas dans l'usf car c'est juste temporaire
Mais là je te laisse le soin de récupérer le code qu'il faut pour ton appli ..... vraiment similaire mais plus simple que ce que j'ai traité ! Faut cliquer en Col A pour lancer l'USF
A tester juste pour essai
 
Dernière édition:

fanch55

XLDnaute Barbatruc
Bonsoir,

merci beaucoup pour votre aide,
ça fonctionne.

Une petite question : au moment d'ajouter les informations dans le tableau, il y a un temps d'attente. Pensez-vous que c'est dû à la taille de l'image ?
Il est vrai que mon pc a 32go de mémoire, il n'y a aucun lag à l'ajout .
Sur un autre avec 16 go, pas de pb non plus.
test effectué avec un fichier image de 3 go.

Il faut dire que le classeur utilisé ne contient que 2 images .
Sur un fichier avec une table avec de multiples images, le classeur va peser lourd et risque de prendre beaucoup de mémoire .... ( tout dépend du nombre d'images présents à l'écran, Office ayant l'intelligence de ne charger que ce qui est visible )

J'ai un classeur avec 10 tables et 10 images par tables, pas de pb jusque là mais je n'ai pas testé les limites ...
:rolleyes:
 

Jacko17

XLDnaute Nouveau
Bonsoir
Voilà encore la coïncidence il y a qq années j'ai commencé à aider un membre d'ici puis terminé en privé pour lui fournir le fichier joint
Il y a le traitement de l'image pour insertion dans Excel mais pas dans l'usf car c'est juste temporaire
Mais là je te laisse le soin de récupérer le code qu'il faut pour ton appli ..... vraiment similaire mais plus simple que ce que j'ai traité ! Faut cliquer en Col A pour lancer l'USF
A tester juste pour essai
Bonjour,

merci pour votre aide, mais par contre ou je pourrais voir le code s'il vous plait ?
 

Discussions similaires

Statistiques des forums

Discussions
312 214
Messages
2 086 313
Membres
103 175
dernier inscrit
abcc