Я пытаюсь создать макрос для печати активного листа.На странице 1, 2, 3, 6 всегда есть данные, поэтому я выбрал «» для ячейки и выбрал ячейку, в которой никогда не будет данных, поэтому они всегда будут печататься.Для страниц 4 и 5 я хочу, чтобы они печатали только в том случае, если в одной определенной ячейке определено что-то, и если ячейка пуста, эта страница не будет напечатана.На странице 4 есть только одна ячейка, которую мне нужно проверить, если она пуста, но на странице 5 мне нужно проверить 4 ячейки, и если какая-то из них не пуста, мне нужна страница 5 для печати.Первые 3 страницы печатаются нормально, но затем я получаю сообщение об ошибке, когда попадаю на страницу 4
Я попытался изменить оператор if для страницы 4, чтобы он смотрел на одну ячейку, а затем, если онасоответствует правилу, оно будет скрывать ячейки (я хотел бы, чтобы они затем показывались после печати страницы 6 или просто не печатали эти строки вместо того, чтобы скрывать, а затем отображать).
Public Sub PrintReport()
Dim strSheetName As StringstrSheetName = ActiveSheet.Name
If Range ("A2"). Value = "" Then 'Page 1
Range ("A1: R91"). PrintOut
IfRange ("A93"). Value = "" Then "Page 2
Range (" A92: R157 "). PrintOut
If Range (" A158 "). Value =" "Then'Page 3
Range ("A158: R199"). PrintOut
If Range ("C202"). Value = "" Then "Страница 4
Range ("A200: A243 "). CompleteRow.Hidden = True
Else
Range (" A200: A243 "). FullRow.Hidden = False
If Range (" C246 "). Значение и диапазон («A269»). Значение и диапазон («E285»). Значение и диапазон («E293»)") .Value =" "Then 'Диапазон 5
(" A244: A301 "). CompleteRow.Hidden = True
Остальное
Диапазон (" A244: A301") .EntireRow.Hidden = False
If Range (" P302 "). Value =" "Then 'Page 6
Range (" A320: R325 "). PrintOut
End If
End If
End If
End If
End If
End If
End Sub
Я бы хотел распечатать каждую страницу, соответствующую заданным критериям, а затем распечатать или не распечатать указанные ячейки.Страницы 1-3 печатаются нормально, так как они всегда печатаются, но это всегда выдает ошибку на странице 4, где диапазон отмечен как Диапазон («A200: A243»). Hidden = True.Мне нужно это либо скрыть, а затем показать эти строки после печати оставшихся страниц, либо просто не распечатать и не показать.