Как я могу увидеть, какой тип данных в моем макросе?

0

У меня есть следующий код, который не работает внутри макроса:

count = Application.Sheets.count
ans = type(count)
msgbox("count is " & ans)

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

даН.м.
источник

Ответы:

1

Как вы упомянули, вы ищете функцию TypeName .

Лучше было бы использовать Option Explicit так, чтобы все переменные определялись по назначению.

Raystafarian
источник
Я использовал typename, чтобы получить фактические типы данных, чтобы я мог их измерить, а затем я могу использовать явную опцию для своей рутины. Спасибо за вашу помощь.
ДанМ
Но функция TypeName сообщает вам, что это за переменная, а не то, что лежат в основе данных. Если бы переменные были объявлены, то у них был бы тип. Во всяком случае, я не знаю, над чем вы работаете - возможно, вы просматриваете чужой код. Удачи!
Raystafarian
1
Как я могу сказать, что лежат в основе данных? разве это не то, что делает typename? и я работаю над своим собственным кодом, заставил его циклически перебирать листы менее чем за одну секунду против 2-3 секунд. должным образом затемняя их, он заставлял рутину работать быстрее.
ДанМ
Да, это то, что он делает. DOH. Но это становится привередливым в зависимости от типа переменной, если это не вариант.
Raystafarian
я думаю, что typename работает, как и ожидалось, так как он правильно определил все мои переменные (я не заботился о них, когда создавал макрос), а затем позволил мне их измерить. В общем, это ускорило мою рутинную работу на 2 секунды, и у меня в рабочей книге может быть до 130 оценочных листов. так что экономия времени - большой плюс. Спасибо за всю вашу помощь.
ДанМ
0

Ах, нашел это. Используйте typename(variable), где variableпеременная, тип которой должен быть возвращен.

даН.м.
источник
Вы также можете использовать окно locals, если вы просматриваете свой код.
Кайл