Запись входного целого числа в ячейку

template<class F>
auto shared_function( F&& f ){
  auto spf=std::make_shared<std::decay_f<F>>(std::forward<F>(f));
  return [spf=std::move(spf)](auto&&...args)->decltype(auto){
    return (*pf)(decltype(args)(args)...);
  };
}

владеет им в общем ptr. Немного меняет семантику, но исправляет ее.

Или напишите свою собственную функцию non-copyd std.

7
задан braX 12 June 2018 в 19:17
поделиться

3 ответа

Можно использовать объект Диапазона в VBA для устанавливания значения именованной ячейки, точно так же, как любая другая ячейка.

Range("C1").Value = Inputbox("Which job number would you like to add to the list?)

Где "C1" является названием ячейки, Вы хотите обновить.

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

10
ответ дан 6 December 2019 в 12:56
поделиться

Я всегда рекомендую использовать именованный диапазон (поскольку Вы предположили, что делаете), потому что, если какие-либо столбцы или строки добавлены или удалены, ссылка имени обновит, тогда как при твердом кодировании ссылки на ячейку (например, "H1", как предложено в одном из ответов) в VBA, затем это не обновит и укажет на неправильную ячейку.

Так

Range("RefNo") = InputBox("....") 

более безопасно, чем

Range("H1") = InputBox("....") 

Можно установить значение нескольких ячеек, также.

Range("Results").Resize(10,3) = arrResults()

где arrResults является массивом по крайней мере 10 строк и 3 столбца (и может быть любой тип). Если Вы используете это, помещаете это

Option Base 1

наверху модуля VBA иначе VBA предположит, что массив запускается в 0 и поместил пустую первую строку и столбец в листе. Эта строка заставляет все массивы запуститься в 1 как значение по умолчанию (который может быть аварийным на большинстве языков, но работает хорошо с электронными таблицами).

4
ответ дан 6 December 2019 в 12:56
поделиться

Я сделал такого рода вещь с формой, которая содержит TextBox.

Таким образом, если Вы хотели вставить, это говорит ячейку H1, затем использование:

ActiveSheet.Range("H1").Value = txtBoxName.Text

0
ответ дан 6 December 2019 в 12:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: