Insert an image into a BOM table

Hello

I have a problem, for the sake of understanding for the workshop, when I make assemblies with profiles, in my nomenclature rather than giving the reference of the profile, I was asked to put an image of the profile. So I have my little images corresponding to all my profiles but I can't fit them into my nomenclature tables. 

The profiles were created in welded construction and I thought I could insert the images with a custom property but I have the impression that the images are not taken into account in the custom properties. Am I wrong? If not, do you have a solution?

 

You can put images in tables or bills of materials but in Excel version.

See this video as an example:

https://www.youtube.com/watch?v=aGZTv99R4hE

2 Likes

A walkthrough make a bill of materials via Excel

See these 2 tutorials among others

https://www.youtube.com/watch?v=tWqjtHd8jw8

https://www.youtube.com/watch?v=z7LElAHzXMM

@+ ;-)

 

2 Likes

Hello

Sorry for the feedback time, but I was pretty busy on other projects.

So first of all, thank you for your answers, I was able to draw inspiration from them.

I'm putting below the code I found if it might be of interest to others...

 

Sub Image_profile()

Dim Line As Long
Sun Last Long Ace Line
Dim Description As String
Dim Path As String
Dim FormatImage As String
Dim HeightLong Ace Line
Dim NameImage As String


Line = 2
Path = "S:\...\Images\"
FormatImage = ".png"
LastLine = Range("A65536"). End(xlUp). Row
LastLine = 100
HeightLine = 20

Rows("1:65536"). RowHeight = HauteurLigne
Columns("A:Z"). EntireColumn.AutoFit

Description = Cells(Line, 3)

While Line <= LastLine + 1

Description = Left(Cells(Line, 3), 6)

If Description = "A.3000" Then
NameImage = Description
Set ImageObject = ActiveSheet.Pictures.Insert(Path & ImageName & ImageFormat)
ImageScale = (ImageObject.Height) / (Cells(Line, 3). Height)
ImageObject.Height = (Cells(Line, 3). Height) - 5
ImageObject.Left = (Cells(Line, 1). width) + (cells(line, 2). Width) + ((((Cells(Line, 3). Width) / 2) - ((ObjectImage.Width) / 2)))
Cells(Line, 3). Activate
ObjetImage.Top = (Range("1:" & Line). Height) - ImageObject.Height - ((Cells(Line, 3). Height - ImageObject.Height) / 2)

Cells(Line, 3). Value = ClearContents

End if

Line = Line + 1

End sub

1 Like

I have the impression that your problem is taken upside down, and that you are told "to do it like this... "

It's like re-inventing "in-house standards" (at the company), re-inventing powder, hot water, or hot-water powder...

(already encountered in other companies this kind of "if we did (invented) like that!")

Rather than putting an image in each MEP:

Print in a large sheet, with large print, large images, a method/technical sheet for the workshop with on one side the textual name of the profile (text that you will find in your MEP) and on the other the corresponding image...

Of course, this implies that the name of the profiles is correct on the CAD side, and that they will not need to be changed over time.

What he asks you to do is already present in the profile catalogues...!!

It almost makes me think of putting an image of a nut in a nomenclature, so that the fitter makes a mistake between H nut, and cap nut...

A BE plan doesn't have to do that...

1 Like