Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/VBA Excel Создание переменных через функцию For - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
VBA Excel Создание переменных через функцию For
Ananas Дата: Среда, 17.07.2019, 18:58 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Дд! Я еще начинающий самоучка VBA-шник :p
Постараюсь объснить проблему теми терминами, которые пока выучила. Спасибо за понимание!

У меня есть цикл через функцию For, который вычисляет определенные данные. Результат каждого круга мне не нужно никуда вписывать, а нужно "запомнить" и использовать дальше (после окончания цикла) в рамках макроса. Так вот я не понимаю как мне им присвоить переменные (имя). Цикл в одно действие.

Например, результат 1-го круга, чтобы сохранился как Result(1), второго - Result(2) и так далее. Только вместо 1, 2 дожно быть значение i с цикла. А дальше я уже оперировала именно переменными Result(i)

В коде ниже цикл вставляет каждый рез-т в новую ячейку.

 [vba]
Код
   For i = 1 To CounMon - 1
                           
        ThisWorkbook.Sheets("111").Cells(8, 5 + i) = DateSerial(Year(StDate), Month(StDate) + i, 0)
    
    Next i
[/vba]
 
Ответить
СообщениеДд! Я еще начинающий самоучка VBA-шник :p
Постараюсь объснить проблему теми терминами, которые пока выучила. Спасибо за понимание!

У меня есть цикл через функцию For, который вычисляет определенные данные. Результат каждого круга мне не нужно никуда вписывать, а нужно "запомнить" и использовать дальше (после окончания цикла) в рамках макроса. Так вот я не понимаю как мне им присвоить переменные (имя). Цикл в одно действие.

Например, результат 1-го круга, чтобы сохранился как Result(1), второго - Result(2) и так далее. Только вместо 1, 2 дожно быть значение i с цикла. А дальше я уже оперировала именно переменными Result(i)

В коде ниже цикл вставляет каждый рез-т в новую ячейку.

 [vba]
Код
   For i = 1 To CounMon - 1
                           
        ThisWorkbook.Sheets("111").Cells(8, 5 + i) = DateSerial(Year(StDate), Month(StDate) + i, 0)
    
    Next i
[/vba]

Автор - Ananas
Дата добавления - 17.07.2019 в 18:58
_Boroda_ Дата: Среда, 17.07.2019, 22:23 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16718
Репутация: 6505 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Вы про вот так?
[vba]
Код
redim ar(1 to CounMon - 1)
for i=1 to CounMon - 1
ar(i)=DateSerial(Year(StDate), Month(StDate) + i, 0)
next i
[/vba]
Вместо массива можно взять коллекцию, словарь, ...


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеВы про вот так?
[vba]
Код
redim ar(1 to CounMon - 1)
for i=1 to CounMon - 1
ar(i)=DateSerial(Year(StDate), Month(StDate) + i, 0)
next i
[/vba]
Вместо массива можно взять коллекцию, словарь, ...

Автор - _Boroda_
Дата добавления - 17.07.2019 в 22:23
Ananas Дата: Понедельник, 22.07.2019, 10:57 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Вы про вот так?


Да, да, да! Спасибо! hands
 
Ответить
Сообщение
Вы про вот так?


Да, да, да! Спасибо! hands

Автор - Ananas
Дата добавления - 22.07.2019 в 10:57
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!