2015-04-08 3 views
0

В ячейке B6 есть номер 1, а его цвет красный. но другие ячейки не красные, и в них нет никаких данных. после выполнения следующего кода, от B6 до B18, будут заполнены цифрами 1 ~ 13, но здесь есть проблема! я не хочу, чтобы скопировать красный цвет В6 В7 ... B8 ... B9 ... и ... я просто нужно скопировать без формата базовой ячейки ...Как автоматически заполнять данные (не формат)

Range("B6").FormulaR1C1 = "1" 
    Range("B6").AutoFill Destination:=Range("B6:B18"),Type:=xlFillSeries 

Может Я нашел что-то вроде этого свойства: xlFillSeriesWithoutFormat или способ сделать это?

ответ

1

Согласно MS Docs *, кажется, что xlFillValues будет вашим лучшим выбором:

Копирование только значения из диапазона источника в целевом диапазоне, повторяя при необходимости.

Все остальные опции явно указывают, что они скопируют форматирование. Похоже, ваши только варианты являются:

  • удалить форматирование ячейки назначения после копирования
  • не имеют форматирование для копирования с помощью:
    1. сохранить от форматирования
    2. удалить форматирование из источника клетка
    3. сделать .AutoFill
    4. затем восстановить форматирование в исходной ячейке

* найдено с помощью поиска Google для "Excel VBA .autofill"

+0

, но, к сожалению, свойство xlFillValues ​​просто скопировал номер 1 (который был в B6) для всех других клеток !!! в любом случае tnx для вашего времени :( –

+0

@MehdiJ взгляните на обновленное предложение. – FreeMan

+0

на самом деле я искал способ низкого уровня (быстрый способ), как xlFillSeries, официально зарегистрированный в excel ... так что кажется, что эта низкая скорость путь - единственный способ. В любом случае, tnx на время :( –

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