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

Вход

Регистрация

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

 

= Мир MS Excel/Что означают суффиксы? - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Что означают суффиксы?
Roman777 Дата: Пятница, 20.03.2015, 12:11 | Сообщение № 1
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация: 127 ±
Замечаний: 0% ±

Excel 2007, Excel 2013
Добрый день!
Часто, просматривая чьи-нибудь коды ВБА, встречаю написания функции с добавлением всяких суффиксов, как например в функции LCase встретил добавление "$", что получилось: LCase$.
Что это означает, и где можно при них почитать?
Так же немного неясно, зачем подобные символы оставлять в наименованиях переменных, что тоже встречалось...?


Много чего не знаю!!!!

Сообщение отредактировал Roman777 - Пятница, 20.03.2015, 12:20
 
Ответить
СообщениеДобрый день!
Часто, просматривая чьи-нибудь коды ВБА, встречаю написания функции с добавлением всяких суффиксов, как например в функции LCase встретил добавление "$", что получилось: LCase$.
Что это означает, и где можно при них почитать?
Так же немного неясно, зачем подобные символы оставлять в наименованиях переменных, что тоже встречалось...?

Автор - Roman777
Дата добавления - 20.03.2015 в 12:11
KSV Дата: Пятница, 20.03.2015, 12:21 | Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
эти "суффиксы" указывают тип данных, возвращаемых функцией (для переменных то же самое).
например, по умолчанию LCase вернет тип Variant (подтип String), а LCase$ сразу вернет тип String.
(см. "Типы данных VB")


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333
 
Ответить
Сообщениеэти "суффиксы" указывают тип данных, возвращаемых функцией (для переменных то же самое).
например, по умолчанию LCase вернет тип Variant (подтип String), а LCase$ сразу вернет тип String.
(см. "Типы данных VB")

Автор - KSV
Дата добавления - 20.03.2015 в 12:21
Roman777 Дата: Пятница, 20.03.2015, 12:28 | Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация: 127 ±
Замечаний: 0% ±

Excel 2007, Excel 2013
KSV, Спасибо большое за инфу!


Много чего не знаю!!!!
 
Ответить
СообщениеKSV, Спасибо большое за инфу!

Автор - Roman777
Дата добавления - 20.03.2015 в 12:28
_Boroda_ Дата: Пятница, 20.03.2015, 12:30 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 16957
Репутация: 6631 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
табличка
К сообщению приложен файл: 7651952.jpg (22.6 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщениетабличка

Автор - _Boroda_
Дата добавления - 20.03.2015 в 12:30
Roman777 Дата: Пятница, 20.03.2015, 12:33 | Сообщение № 5
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация: 127 ±
Замечаний: 0% ±

Excel 2007, Excel 2013
_Boroda_, О! так интересней! Тоже благодарствую!


Много чего не знаю!!!!
 
Ответить
Сообщение_Boroda_, О! так интересней! Тоже благодарствую!

Автор - Roman777
Дата добавления - 20.03.2015 в 12:33
KSV Дата: Пятница, 20.03.2015, 12:57 | Сообщение № 6
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
А в VBA7 добавили еще:
^ - тип LongLong


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333
 
Ответить
СообщениеА в VBA7 добавили еще:
^ - тип LongLong

Автор - KSV
Дата добавления - 20.03.2015 в 12:57
TimosMN15 Дата: Пятница, 20.03.2015, 17:40 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый день.

Получается запись Dim Primer$ и Dim Primer as String будет восприниматься одинаково? Переменной Primer не будет присваиваться тип Variant?

Спасибо.
 
Ответить
СообщениеДобрый день.

Получается запись Dim Primer$ и Dim Primer as String будет восприниматься одинаково? Переменной Primer не будет присваиваться тип Variant?

Спасибо.

Автор - TimosMN15
Дата добавления - 20.03.2015 в 17:40
nilem Дата: Пятница, 20.03.2015, 19:14 | Сообщение № 8
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
Dim Primer$ и Dim Primer as String будет восприниматься одинаково?

Точно. Но все же лучше использовать as String (Уокенбах так советует)


Яндекс.Деньги 4100159601573
 
Ответить
Сообщение
Dim Primer$ и Dim Primer as String будет восприниматься одинаково?

Точно. Но все же лучше использовать as String (Уокенбах так советует)

Автор - nilem
Дата добавления - 20.03.2015 в 19:14
MCH Дата: Пятница, 20.03.2015, 19:44 | Сообщение № 9
Группа: Админы
Ранг: Старожил
Сообщений: 2008
Репутация: 752 ±
Замечаний: ±

Но все же лучше использовать as String

Николай, а есть ли другая аргументация, кроме ссылки на советы Уокенбаха.

Я предпочитаю при объявлении переменных тип указывать "суффиксом".
Как минимум меньше нужно набирать букв и легче читается код.

Могу только предположить, что может отсутствовать совместимость между диалектами VBA (BASIC) либо она (несовместимость) может возникнуть в будущем.
Вряд ли это влияет на скорость выполнения кода.
 
Ответить
Сообщение
Но все же лучше использовать as String

Николай, а есть ли другая аргументация, кроме ссылки на советы Уокенбаха.

Я предпочитаю при объявлении переменных тип указывать "суффиксом".
Как минимум меньше нужно набирать букв и легче читается код.

Могу только предположить, что может отсутствовать совместимость между диалектами VBA (BASIC) либо она (несовместимость) может возникнуть в будущем.
Вряд ли это влияет на скорость выполнения кода.

Автор - MCH
Дата добавления - 20.03.2015 в 19:44
Serge_007 Дата: Пятница, 20.03.2015, 20:21 | Сообщение № 10
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2750 ±
Замечаний: ±

Excel 2016
Поделюсь своим ИМХО)

Я использую оба варианта: "суффиксный" - когда код пишется наспех (потому что быстрее один символ поставить, чем два AS, и потом еще из списка выбирать тип) и обычный в остальных случаях - он ИМХО более удобочитаемый

Кроме того, не для всех типов есть сокращения

А на скорость выполнения кода влияет, хотя и немного. По-моему у того же Уокенбаха (могу ошибаться) читал что компилятор сокращения приводит к нормальному виду и на это тратится ресурс. Но составлять он должен такие милимикронные доли секунд, что им можно пренебречь)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеПоделюсь своим ИМХО)

Я использую оба варианта: "суффиксный" - когда код пишется наспех (потому что быстрее один символ поставить, чем два AS, и потом еще из списка выбирать тип) и обычный в остальных случаях - он ИМХО более удобочитаемый

Кроме того, не для всех типов есть сокращения

А на скорость выполнения кода влияет, хотя и немного. По-моему у того же Уокенбаха (могу ошибаться) читал что компилятор сокращения приводит к нормальному виду и на это тратится ресурс. Но составлять он должен такие милимикронные доли секунд, что им можно пренебречь)

Автор - Serge_007
Дата добавления - 20.03.2015 в 20:21
nilem Дата: Пятница, 20.03.2015, 20:23 | Сообщение № 11
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
а есть ли другая аргументация, кроме ссылки на советы Уокенбаха

Где-то читал, что все эти сокращения, типа & вместо As Long или [A1:A10] вместо Range("A1:A10").Value не то чтобы сильно вредят, но пользы точно не приносят - что-то там происходит в момент компиляции.
Т.е. другой аргументации нет. Но Уокенбаху все же верю :)


Яндекс.Деньги 4100159601573
 
Ответить
Сообщение
а есть ли другая аргументация, кроме ссылки на советы Уокенбаха

Где-то читал, что все эти сокращения, типа & вместо As Long или [A1:A10] вместо Range("A1:A10").Value не то чтобы сильно вредят, но пользы точно не приносят - что-то там происходит в момент компиляции.
Т.е. другой аргументации нет. Но Уокенбаху все же верю :)

Автор - nilem
Дата добавления - 20.03.2015 в 20:23
  • Страница 1 из 1
  • 1
Поиск:

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