Мне нужно сохранить отдельные ячейки на основе рисунков в столбце с китайскими иероглифами в виде отдельных JPG для включения в отчет Visual FoxPro.
Я перебирал различные вопросы о переполнении стека, например: Сохранение диапазона в виде изображения в Excel 2016 и Экспорт изображений из файла Excel в jpg с использованием VBA Однако я относительно новичок в VBA и не могу понять, как перебирать таблицу длясоздайте отдельные JPG для каждой ячейки (и назовите их отдельно). В идеале я хотел бы назвать их значением другого столбца, но я также могу жить с именованием затем с номером записи (то есть 1.jpg, 2.jpg ...). Я попытался сделать код из другой публикации (см. Ниже), но мне не повезло.
Sub makepic()
''' Set Range you want to export to file
Dim path As String
path = "C:\BP\BP2020\JPGs\"
Dim cntr As Integer
cntr = 1
Dim rgExp As Range
Dim CCntr As String
CString = "A1:B6"
Set rgExp = Range(CString)
For Each cell In rgExp
''' Copy range as picture onto Clipboard
rgExp.Cells.Item(cntr, 1).CopyPicture Appearance:=xlScreen, Format:=xlBitmap
''' Create an empty chart with exact size of range copied
With ActiveSheet.ChartObjects.Add(Left:=rgExp.Left, Top:=rgExp.Top, _
Width:=rgExp.Cells.Item(cntr, 1).Width, Height:=rgExp.Rows(cntr).Height)
.Name = "ChartVolumeMetricsDevEXPORT"
.Activate
End With
CCntr = rgExp.Cells.Item(cntr, 2)
cntr = cntr + 1
''' Paste into chart area, export to file, delete chart.
If CCntr <> "" Then
ActiveChart.Paste
ActiveSheet.ChartObjects("ChartVolumeMetricsDevEXPORT").Chart.Export (path + CCntr & ".jpg")
ActiveSheet.ChartObjects("ChartVolumeMetricsDevEXPORT").Delete
End If
Next cell
End Sub
Основное сообщение об ошибке, которое меня беспокоило, - "фигуры", однако я не смотрю наскопируйте картинки, но сохраняйте текст в каждой ячейке в виде картинок.
PS: я пытаюсь сделать свои вопросы максимально лаконичными и удобочитаемыми, но мне постоянно говорят, что янеправильно формулирую мои вопросы. Это очевидно из-за незнания правильного формата. Я перечитал статьи о публикации и надеюсь, что этот «пройдёт проверку». Если нет, прошу прощения.