You are rigth. You get all the files but you lose the names that they have in the worksheet.
If I also wanted the names then I'd then I'd use another method, with vba
- use a chart object to export all the pictures, saving each with the name they have in the worksheet, for ex.
- get the picture files and parse the xml sources for the names (in the xl->(media,drawing) subfolders)
For the first options there are lots of examples available (also here in mrexcel). If you don't know how to do it and can't find examples post back.
For the second option, you have to look into the xml sources for the workbook, open those files and parse them. If you are not used to it, maybe the first option is easier.
This is an example. It exports the pictures in worksheet "Sheet1" to a folder using the picture names.
Assumes that the pictures names are valid file names and unique.
' Export pictures from a worksheet to a folder
Dim ws As Worksheet
Dim chtO As ChartObject
Dim pic As Picture
Dim lPic As Long
Const sPathname = "c:\tmp\PicTest\"
Set ws = ActiveWorkbook.Worksheets("Sheet1")
Set chtO = ws.ChartObjects.Add(1, 1, 1, 1)
For lPic = 1 To ws.Pictures.Count
Set pic = ActiveSheet.Pictures(lPic)
' resize the chartobject to the dimensions of the picture
.Width = pic.Width
.Height = pic.Height
' paste the picture into the chart object
' export the chart to a file
chtO.Chart.Export sPathname & ws.Pictures(lPic).Name & ".jpg"
' clean up