Деление по модулю
If (k Mod 10000) = 0 Then Debug.Print k: DoEvents
Знак (Mod) используется для выполнения операции деления по модулю. При делении по модулю выражение возвращает только остаток от деления как целое.
'Пример арифметических выражений со знаком "Mod"
8 Mod 2 'возвращает значение 0;
5.1 Mod 3 'возвращает значение 2;
6 Mod MyVar 'если MyVar содержит 3, возвращает 0
Доступное для понимания объяснение этой математической операции приведено на одном из форумов программистов . Приведу цитату оттуда: "представь, что есть полная 50л канистра и 3л банка. И ты начинаешь вычерпывать из канистры банкой воду (набирать можно только полную банку). 48л вычерпал, осталось 2 литра. Это и есть остаток от деления 50 на 3 по модулю." Другими словами 50 Mod 3 возвращает 2.
Тип данных результата выражения деления по модулю - это Integer или Long. VBA использует наименьший тип, который подходит для результата выражения.