Модераторы: mihanik
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> int to hex аналогично pascal, Перевод из десятичной в шеснадцатиричную 
:(
    Опции темы
Bugmaker
Дата 17.12.2014, 15:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 27.6.2008

Репутация: нет
Всего: нет



Всем добрый день.
Есть следующий код на паскале

for i := Length( BufPass ) downto 2  do
    stemp:= stemp + IntToHex( Ord( BufPass[i] ), 2 );


В VBA это должно выглядеть примерно так

Hex(Asc(Mid(GetPass, i, 1)))

Результат работы отличается, насколько я понимаю из-за того, что паскаль переводит в hex, фиксированной длины.
Результаты работы данных кодов отличаются наличием\отсутствием некоторых нулей. Как сделать на vba полный аналог?
PM MAIL   Вверх
Romikgy
Дата 17.12.2014, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7325
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146





--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Bugmaker
Дата 17.12.2014, 17:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 27.6.2008

Репутация: нет
Всего: нет



Не вынес из той ветки решения для себя. Ткните носом, пожалуйста. Видимо мой английский недостаточно хорош.
PM MAIL   Вверх
Akina
Дата 17.12.2014, 18:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20570
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 25
Всего: 453



Цитата(Bugmaker @  17.12.2014,  16:48 Найти цитируемый пост)
Результаты работы данных кодов отличаются наличием\отсутствием некоторых нулей

Покажите, что даёт код VB и что Pas. Ещё лучше - исходные данные и желаемый результат. А то хрустальный шар у нас на ремонте.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Romikgy
Дата 17.12.2014, 18:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7325
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146



Цитата(Bugmaker @  17.12.2014,  14:48 Найти цитируемый пост)
Hex(Asc(Mid(GetPass, i, 1)))

work perfect !!! 
если вывод в ячейку экселя! 
Cells(...).NumberFormat = "@"


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Bugmaker
Дата 18.12.2014, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 27.6.2008

Репутация: нет
Всего: нет



Pascal
Пример кода : Преобразование integer в hex формат
begin
  // Отображение десятичного 123 в шестнадцатеричной системе с минимальной шириной
  ShowMessage('1234 decimal = '+IntToHex(1234, 1));

  // Отображение десятичного 123 в шестнадцатеричной системе с фиксированной шириной
  ShowMessage('1234 decimal = '+IntToHex(1234, 8));
end;
1234 decimal = 4D2
1234 decimal = 000004D2

Функция IntToHex принимает второй параметр, обратите на него внимание. В VBA получить из 1234 результат 000004D2, используя лишь HEX функцию у меня не вышло...

По поводу " А то хрустальный шар у нас на ремонте. " - Значит ситуация следующая. Я беру из базы (Орион про Bolid)  коды проксимити карт. Они там в несколько измененном виде, есть описание как вернуть их в исходное состояние, но алгоритм переформатирования на Паскале... Мне же нужно сделать это на VBA в EXCEL. Сейчас попробую прикрепить на всякий случай файл с данным алгоритмом...



Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  расшифровка_пароля___Орион_Про.doc 15,00 Kb
PM MAIL   Вверх
Akina
Дата 18.12.2014, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20570
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 25
Всего: 453



Ну... 

Присоединённый файл ( Кол-во скачиваний: 19 )
Присоединённый файл  1.PNG 15,50 Kb


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Bugmaker
Дата 18.12.2014, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 27.6.2008

Репутация: нет
Всего: нет



Работает.
Спасибо!
PM MAIL   Вверх
Akina
Дата 18.12.2014, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20570
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 25
Всего: 453



Bugmaker, добавь необходимые проверки на косяк в передаваемых параметрах.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
slipnsk
Дата 30.3.2015, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 30.3.2015

Репутация: нет
Всего: нет



День добрый. Задача таже самая. Есть ли готовый код на VBA? 
PM MAIL   Вверх
Akina
Дата 30.3.2015, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20570
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 25
Всего: 453



Цитата(slipnsk @  30.3.2015,  17:11 Найти цитируемый пост)
Есть ли готовый код на VBA?  

Есть. На скриншоте. Да, придётся руками поработать, код набрать, но дело того стОит...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.1483 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.