Forum Discussion
VBA code fails in newest build
I think this could be because the macro was placed at the worksheet level
...without being sure as don't have a full picture of the code/file/intend.
Try right-clicking on the module node in the VBA project window,
click "Insert" => "Module"
and then paste your macro into the new module
(make sure you use the macro recorded at worksheet level Clear).
Hope I could help you with these information / links.
I know I don't know anything (Socrates)
- lazuli1485Nov 10, 2022Copper Contributor
Thank you for the suggestion. Unfortunately not - the line is in a module and always has been.
- mtarlerNov 11, 2022Silver Contributorare you sure RowToAddImage, ColumnToAddImage are both valid and don't have or result in a bad reference
- lazuli1485Nov 12, 2022Copper Contributor
Hi,
Both are valid. I've stripped the code back and it can be inserted into a blank workbook to test:
Private Sub CommandButton1_Click() Dim ImageToAdd Dim RowToAddImage RowToAddImage = 2 Dim ColumnToAddImage ColumnToAddImage = 7 Dim ImageURL As String 'ImageURL = "https://peters.co.uk/rgw/assets/covers/large/513/9781910002513.jpg" ' fails ImageURL = "https://peters.co.uk/uploads/downloads/medium/9781910002513.jpg" 'same image, same website, works Set ImageToAdd = ActiveSheet.Shapes.AddPicture(ImageURL, True, False, _ Cells(RowToAddImage, ColumnToAddImage).Left + 6, _ Cells(RowToAddImage, ColumnToAddImage).Top + (Cells(RowToAddImage, ColumnToAddImage).Height / 2), -1, -1) End SubAs you can see I've narrowed the error down - it is conditional upon the image source. It will work with an image hosted on Google or Amazon. It works with the image stored in one valid web location, but will not work in another.
My assumption at this point is that the newer builds is not treating the fail location as secure... but I have no idea why this might be the case.