2016-11-04 2 views
1

фон:
Имея столбец А и столбец B с нестандартной нумерацией, я пытаюсь ввести этот номер в отдельные листы, нажав на кнопку. IE:

Колонка A Колонка B ..........
MySheet .................. 2

Проблема:
Я не уверен, о том, как получить адрес последней ячейки для печати для того, чтобы вставить номер тамПоследней версия для печати Cell Excel VBA

enter image description here


Обратите внимание, что сноска не будет работать, так как это не следуя последовательности как таковой -Он пользователь указал ей/ему needs-, это может быть сноска 10, но пользователь хочет как 15.

подход:
Там ничего не -как вы можете видеть, что ячейка (текст и цвет на изображении приведены только для показанных целей), которые могут помочь мне обратиться к usedrange, last row или go to special.
Вопрос:
Возможно ли получить что-то вроде?

Sheets("MySheet").Range(LastPrintable.Address).value = 2 
+0

Можете ли вы сделать область на листе именованным диапазоном? –

+0

@RyanWildry Нет, это в основном копия/вставка из другой книги, и я обрабатываю это (он будет запрашивать у пользователя это сделать, и это может быть непрактичным для этого для каждого скопированного листа, пользователь предпочел бы их вручную набрать, если такой условие задается) в этом Subor или пытается его обработать. – Sgdva

+0

Установили ли они область печати перед печатью? –

ответ

1

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

Dim ws As Worksheet 
Dim printRange As Variant 
Dim lastCell As Range 

Set ws = Sheets("MySheet") 
printRange = Split(ws.PageSetup.PrintArea, ":") 
Set lastCell = Range(printRange(1)) 

«lastCell» теперь содержит последнюю ячейку в области для печати.

lastCell.Value2 = 2 

Поскольку это Range объекта, вы также можете получить строку, столбец, и т.д. от него, как вы считаете нужным.

Смежные вопросы