Центрирующая фигура в ячейке увеличивает высоту сверху по мере увеличения ряда - PullRequest
0 голосов
/ 28 мая 2019

У меня есть макрос, который берет информацию с другого листа и переформатирует. В каждой 5-й строке внизу должно быть изображение, а вся другая информация вводится правильно в следующих строках. По мере увеличения номера строки увеличивается расстояние от вершины ячейки до изображения. Например, если первая фигура находится в 5 пикселях от вершины обозначенной ячейки, следующая будет 6 и так далее. Если бы это была простая тенденция, я мог бы добавить переменную, чтобы приспособить это, но все изображения немного различаются по размеру, поэтому я пытаюсь сделать это динамически.

До сих пор, как упоминалось выше, я пытался делать это статически, используя переменную для учета увеличения, но безуспешно. Ниже приведен код, который я сейчас использую, который, кажется, не работает.

 If CopyPicFromCell(shtSource.Range("A1").Offset(i - 1, 2)) Then
    'copied the picture, so paste to shtDest
    shtDest.Paste
    With shtDest.Shapes(shtDest.Shapes.Count)
        .Top = shtDest.Range("A1").Offset(x - 3, 0).Top + ((shtDest.Range("A1").Offset(x - 3, 0).Height - .Height) / 2)
        .Left = shtDest.Range("A1").Offset(x - 3, 0).Left + (shtDest.Range("A1").Offset(x - 3, 0).Width - .Width) / 2
    End With
 End If

Это всегда центрирует изображение слева направо, но, кажется, не выполняет трюк вертикально. Пожалуйста, сообщите, если есть какая-либо другая информация, необходимая. Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...