Images

KARPUZ Messages postés 17 Statut Membre -  
cs_Le Pivert Messages postés 8437 Statut Contributeur -
Bonjour,

Bonjour,
Pouvez vous me donner un petit coup de pouce concernant les image voila je souhaiterai avec une macro, importer toute mes photo en colonne B jusqu’à la ligne 2500 en les dimensionnant dans les cellule est il possible de faire sa je vous remercie beaucoup si vous pouviez m'aider.

merci encore

9 réponses

  1. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    Bonjour,

    voici un exemple:

    http://www.cjoint.com/c/GAwrTLxjH7Q

    1
    1. KARPUZ Messages postés 17 Statut Membre
       
      es ce une macro?
      0
  2. KARPUZ Messages postés 17 Statut Membre
     
    désolé cs_lepivert avec toutes les publicité qu'il y a sur le liens que tu m'as envoyé j'ai pensé que c'était pour me faire installé quelque chose que je ne souhaite pas en effet il y a bien une feuille avec des macro je n'ai pas réussi à activer les macros sur open office mais j'ai tout copier sur excel
    tout ce que j'arrive à faire fonctionner c'est la macro Sub AfficheFichiersEtChemins() le reste Nada ça ne fonctionne pas je crois que je n'ai pas les compétences pour faire fonctionner le reste à croire que je dois cliquer sur exécuter pour que tout fonctionne or à chaque fois il y a différent message d'erreurs que je n'arrive pas à résoudre
    0
    1. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      Je ne comprends pas, c'est un classeur Excel que j'ai mis. Tu n'as pas besoin de l'ouvrir avec Open pour ensuite le copier sur Excel.
      Il suffit de l'ouvrir avec Excel; Je l'ai enregistré, en Excel 2003 pour que tout le monde puisse s'en servir.

      @+
      0
      1. KARPUZ Messages postés 17 Statut Membre > cs_Le Pivert Messages postés 8437 Statut Contributeur
         
        désolé cs_ le pivert es ce que cette macro fonctionne chez toi, moi j'ai un problème avec la liste index elle ne passe pas
        0
      2. cs_Le Pivert Messages postés 8437 Statut Contributeur 730 > KARPUZ Messages postés 17 Statut Membre
         
        voici une version différente:

        http://www.cjoint.com/c/GAyu2HbfMkQ

        Essaie la
        0
      3. KARPUZ Messages postés 17 Statut Membre > cs_Le Pivert Messages postés 8437 Statut Contributeur
         
        je t'en remercie cs_le pivert il ne sert à rien de m'envoyer plus d'exemples il faut que je suivent une paire de tuto avant de comprendre les codes que tu m'envoie, de plus il y a des sub et end sub à la suite dans ce code difficile de comprendre pour l'instant de quoi il s'agit je reviendrais dessus dans quelque semaine
        0
  3. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  4. KARPUZ Messages postés 17 Statut Membre
     
    j'ai finalement trouvé comment insérer les images dans une boucle voici le code:

    Sub inserer_image()

    rep = "C:\Users\Desktop\Fichier\ "
    Fichier = Dir(rep & "*.jpg")

    i = 2

    Do While Fichier <> ""
    Cells(i, 3).Value = Fichier
    Cells(i, 3).Select
    Set Image = ActiveSheet.Pictures.Insert(re p & Fichier)
    Image.Name = Fichier

    i = i + 1
    Fichier = Dir

    Loop

    End Sub

    Seulement je ne sais pas mettre les images avec une dimensions forcé genre 70*70 et centrer sur la cellule (horizontalement et verticalement)
    Pouvez vous m'aider?
    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      bonjour, as-tu essayé d'enregistrer une macro pendant que tu changeais les dimensions? cela va sans doute t'aider à comprendre comment le faire en VBA.
      0
  5. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    Je ne sais pas où tu as trouvé ce code, mais il n'est pas approprié à ce que tu veux faire. Il met toutes les images dans la même cellule.

    Voici le code qu'il te faut (le même que je t'avais adressé a ma 1ère intervention). A toi de l'adapter à ta convenance. Si sur ce code tu as des questions, je suis là pour t'aider:

    http://boisgontierjacques.free.fr/pages_site/lesimages.htm#ImportImages
    0
  6. KARPUZ Messages postés 17 Statut Membre
     
    Finalement j’y suis arrivée avec votre aide seulement il me manque un dernier éléments pour finaliser mon projet
    Voila le propos : j’ai nommé toutes mes images que je souhaite importer.
    Toute les référence de mes images sont en colonne B et je souhaite que les images importés se place en face des des référence en colonne C plus précisément j’ai en B2 la référence 123 il faut que l’image nommé 123 se place en cellule C2 et ainsi de suite
    Est t-il possible de faire cela ?
    0
  7. KARPUZ Messages postés 17 Statut Membre
     
    Finalement j’y suis arrivée avec votre aide seulement il me manque un dernier éléments pour finaliser mon projet
    Voila le propos : j’ai nommé toutes mes images que je souhaite importer.
    Toute les référence de mes images sont en colonne B et je souhaite que les images importés se place en face des des référence en colonne C plus précisément j’ai en B2 la référence 123 il faut que l’image nommé 123 se place en cellule C2 et ainsi de suite
    Est t-il possible de faire cela. ?
    0
    1. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      Voilà un exemple:

      http://www.cjoint.com/c/GBspMtT6PBQ
      0
      1. KARPUZ Messages postés 17 Statut Membre > cs_Le Pivert Messages postés 8437 Statut Contributeur
         
        il y a des sub l'un a la suite est ce que c'est un piège?
        ton exemple ne fonctionne pas ou alors il faut le sacrément le modifier afin de l'adapter a ce que je veux faire ce qui dépasse mes capacité comment je peux le faire à partir du code que j'ai créer voici le code:


        Sub inserer_image()

        rep = "C:\Users\erdogan\Pictures\branchement provisoire de goutiere\"
        'rep = "C:\Users\erdogan\Pictures\photo matiere premiere accessoire outillage\matiere premiere\raccords cuivre\photo decoupe et retouche pour catalogue excel\"
        'Fichier = Dir(rep & "*.jpg")

        Fichier = Dir(rep & Cells(i, 2).Value & "*.jpg")

        i = 2

        Do While Fichier <> ""

        Cells(i, 3).Value = Fichier

        Cells(i, 3).Select
        Set Image = ActiveSheet.Pictures.Insert(rep & Fichier)
        Image.Name = Fichier

        ActiveSheet.Shapes(Fichier).LockAspectRatio = msoFalse
        ActiveSheet.Shapes(Fichier).Height = 70
        ActiveSheet.Shapes(Fichier).Width = 70
        'Rows(i & ":" & i).RowHeight = 100
        Columns("C:C").ColumnWidth = 14
        Rows.RowHeight = 100
        'ActiveSheet.Shapes(Fichier).AutoShapeType = msoShapeRoundedRectangle
        ActiveSheet.Shapes(Fichier).IncrementLeft 15.5
        ActiveSheet.Shapes(Fichier).IncrementTop 15.5


        i = i + 1
        Fichier = Dir

        Loop

        End Sub

        j’ai en B2 la référence 123 il faut que l’image nommé 123 se place en cellule C2 et ainsi de suite
        0
    2. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      Mon code fonctionne très très bien. il suffit de chercher ton dossier images!

      il y a des sub l'un a la suite est ce que c'est un piège?

      Tu ne serais pas un peu parano. Il y a une sub pour chercher le dossier image et une sub pour importer ces images. Le reste sert à réinitialiser la feuille si on le désire. Quand on fait du vba il faut savoir lire les macros, c'est la moindre des choses. C'est ma dernière intervention, voici une seule sub, comme cela tu ne pourras pas te tromper:

      Sub ImportImages()
      Dim start As Single
      Dim répertoirePhoto, nf As Variant
      Dim img As Object
      Dim Derlig As Integer
      ActiveSheet.DrawingObjects.Delete
        répertoirePhoto = "C:\Users\erdogan\Pictures\branchement provisoire de goutiere\"
        nf = Dir(répertoirePhoto & "*.jpg") ' premier fichier
        Range("C1").Select
        start = Timer
        Do While nf <> ""
          Set img = ActiveSheet.Pictures.Insert(répertoirePhoto & nf)
          img.Top = ActiveCell.Top
          img.Left = ActiveCell.Left
          img.Height = 70
          img.Width = 70
          img.Name = Left(nf, Len(nf) - 4) ' Donne un nom à l'image
          ActiveCell.Offset(0, -1) = Application.Proper(Left(nf, Len(nf) - 4))
          ActiveCell.EntireRow.RowHeight = img.Height
          ActiveCell.EntireColumn.ColumnWidth = (img.Width / 5.5) - 0.2
          nf = Dir ' suivant
          ActiveCell.Offset(1, 0).Select
        Loop
        Worksheets("Feuil1").Columns("B:B").AutoFit
         Derlig = Columns("B").Find(what:="*", searchdirection:=xlPrevious).Row
       MsgBox "Importation de " & Derlig & " images en " & Round(Timer - start, 2) & " sec", vbDefaultButton1, "Importer images"
      End Sub
      


      Ps dans le code que tu as montré, il n'y a aucune variable déclarée. Apprends toi à mettre Option Explicit au début de ton module.
      0
  8. KARPUZ Messages postés 17 Statut Membre
     
    Vous ne m'aider pas du tout
    merci
    -3
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      bonsoir, c'est probablement parce que tu ne cherches pas un petit coup de pouce.
      nous demandes-tu si c'est possible de faire cela, ou nous demandes-tu de le faire pour toi?
      cs_Le Pivert t'a très gentiment donné un exemple qui montre que c'est possible, et que tu peux adapter pour réaliser ce que tu souhaites. Je suis surpris que cela ne t'aide pas du tout.
      0