2016-06-24 2 views
0

Я изо всех сил стараюсь достичь точного результата, который я хочу.Переменные в формулах VBA

Ниже приведена формула, созданная макрорекордером, что в какой-то степени оправдано - однако моя проблема - это лист, который я хочу импортировать, не всегда будет называться неделя 11. Однако он всегда будет «Sheet1 «что касается VBA в этой конкретной книге.

В моем примере мы имеем главную книгу (Booka) и отчет (неделя x.csv)

В настоящее время вы можете выбрать, какую неделю вы хотите импортировать из выпадающего списка, это открывает соответствующий файл при нажатии кнопки импорта.

Как я могу изменить это VBA, так что он будет правильно импортировать из любого открытия отчета (неделя 1, неделя 2 и т.д.)

Моя текущая переменная «неделя».

Надеется, что вы можете помочь

ActiveCell.FormulaR1C1 = _ 
    "=COUNTIFS('Week 11.csv'!C10,R2C&""*"",'Week 11.csv'!C11,""NC recd*"")" 
+0

Поместите выбранную неделю из выпадающего списка в переменный и сцепить его к остальной части формулы. – Brian

ответ

0
dim x as long 
for x = 1 to 11 
    cells(x,1).formular1c1 = "=countifs('week " & x & ".csv'!c10,r2C&""*"", 'week " & x & ".csv'!c11,""NC NC recd*"")" 
next x 
+0

Я исправил это, он работает спасибо - я просто хотел задать быстрый вопрос. В середине кода у вас есть «r2C» в отношении ячейки, которая является одним из моих критериев для countif - что это за синтаксис? Как только данные подсчитываются, я перемещаю формулы вдоль другого столбца, где критерии будут меняться – OliEshmade

+0

@OliEshmade, на самом деле я не знаю. Я просто копирую ваши коды и вставляю их. – PaichengWu

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