Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.90/131: Рейтинг темы: голосов - 131, средняя оценка - 4.90
3 / 3 / 0
Регистрация: 08.04.2011
Сообщений: 13

Нестандартные символы

08.04.2011, 17:42. Показов 28201. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем здравствовать!
Вопрос следующий: есть задача импортировать данные из таблицы в файл. Но фикус в том, что данные на немецком языке и есть буквы, которые в стандартных раскладках отсутствуют. Конкретно меня беспокоит буква ß. Она импортируется как знак вопроса. Есть вариант вылавливать ее в тексте и заменять на "ss".
Вопрос в том, что я не могу ее выловить через VBA. Excel ее понимает, там ее можно скопировать в ячейку и сравнивать. Но мне надо именно через VBA все делать, а тут я ее никак поймать не могу. Ловить как знак вопроса chr(63) тоже не катит, потому что в тексте могут встречаться реальные знаки вопроса. Помогите, кто чем может.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.04.2011, 17:42
Ответы с готовыми решениями:

Нестандартные символы в vba
Добрый день, форумчане. Проблема такая: Создаю уравнение через конструктор Microsoft Equation. Например: x+2. Макросом копирую содержимое...

Составьте новую символьную строку, содержащую те же символы, но символы "+" и "4" запишите трижды
Пожалуйста помогите!!!!! символьная стока содержит К символов.Составьте новую символьную строку содержащею теже символы однако символы...

Нестандартные символы!
Здравствуйте! Очень сильно интересует вопрос: Как задать нестандартные символы в свойстве Caption компонента Label при заполнении...

20
1705 / 574 / 74
Регистрация: 10.04.2009
Сообщений: 9,286
08.04.2011, 17:54
попробуйте узнать её код, вроде этого
Visual Basic
1
2
3
Selection.TypeText Text:=Chr(150) 'добавить тире, длинное тире
Selection.TypeText Text:=Chr(45) 'добавить тире, короткое тире
Selection.TypeText Text:=Chr(13) 'добавить абзац, то есть нажать клавишу Энтер
То есть всё наоборот она выделана, Вы узнаёте код
0
3 / 3 / 0
Регистрация: 08.04.2011
Сообщений: 13
08.04.2011, 23:06  [ТС]
Простите не понял... как так можно ейный код узнать? ASC дает код знака вопроса... В справке написано, что ее код 223, но chr(223) дает "Я"
0
1705 / 574 / 74
Регистрация: 10.04.2009
Сообщений: 9,286
09.04.2011, 09:06
вот с этим попобуйте, если нет тогда не знаю
Visual Basic
1
2
3
4
5
6
7
'Asc - это инструмент, с помощью которого можно определить код символа по кодировке ASCII
'русские буквы имеют следующие коды из кодировки ASCII - Ё -168, ё - 184, а остальные от 192 и до конца, до 255
For u = 1 To 255
Символ_цифрового_ANSI_кода = Chr(u)
Selection.TypeText Text:=u & " " & Символ_цифрового_ANSI_кода
Selection.TypeParagraph 'вставить абзац, то есть параграф
Next
Добавлено через 15 минут
в символах, в греческий основной есть символ ß
а вообще вспомнил надо искать не в Chr, а в ChrW(8595)- это стрелочка вниз
Видите аж 8595 знак

Добавлено через 6 минут
ну так и есть 223 код у ß, узнал так:
Visual Basic
1
2
3
4
5
For u = 1 To 255
Символ_цифрового_ANSI_кода = ChrW(u)
Selection.TypeText Text:=u & " " & Символ_цифрового_ANSI_кода
Selection.TypeParagraph 'вставить абзац, то есть параграф
Next
Когда всё узнаете, отпишетесь, ОК??

Добавлено через 3 минуты
как бы узнать сколько знаков всего существует в ChrW и Chr, чтобы знать цикл до скольки делать, ну или поставить до 100000, наверное в конце ошибка вылетит ))

Добавлено через 13 минут
обалдеть, до 10 тысяч цикл поставил, есть знаки
потом поставил до 100 тысяч, прога на 43153 знаке запнулась, говорит возникла проблема с оперативной памятью
Сколько же их, знаков???
Там и иероглифы есть, кому надо

Добавлено через 3 часа 5 минут
так вот Chr - Символ_цифрового_ANSI_кода
а ChrW - ??????
2
3 / 3 / 0
Регистрация: 08.04.2011
Сообщений: 13
10.04.2011, 22:30  [ТС]
Спасибо, получилось!!!
If InStr(1, Bezeighnung, ChrW(223)) Then Bezeighnung = Replace(Bezeighnung, ChrW(223), "ss")

где, Bezeighnung, соответственно строка, где могут быть немецкие буквы. УРА!
0
Заблокирован
10.04.2011, 23:43
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
а ChrW - ?
Юникод.
1
1705 / 574 / 74
Регистрация: 10.04.2009
Сообщений: 9,286
11.04.2011, 06:19
Юнико́д[1] или Унико́д[2] (англ. Unicode) — стандарт кодирования символов, позволяющий представить знаки практически всех письменных языков.[3]
0
3 / 3 / 0
Регистрация: 08.04.2011
Сообщений: 13
12.04.2011, 17:13  [ТС]
Вот, еще нашел

ChrW(245) - õ
ChrW(252) -ü
ChrW(228) - ä
ChrW(246) - ö
0
1705 / 574 / 74
Регистрация: 10.04.2009
Сообщений: 9,286
12.04.2011, 19:21
их же вроде не 5 а 6??

1. ChrW(245) - õ
2. ChrW(252) - ü
3. ChrW(228) - ä
4. ChrW(246) - ö
5. ChrW(223) - ß
Где 6 й??
0
3 / 3 / 0
Регистрация: 08.04.2011
Сообщений: 13
12.04.2011, 19:59  [ТС]
Да? Я не знал что 6. Какой еще?
0
1705 / 574 / 74
Регистрация: 10.04.2009
Сообщений: 9,286
12.04.2011, 20:04
переборщил, умлаутов 3:
Умлаут в современном немецком языкеВ немецком языке гласная, подверженная умлауту, палатализируется под влиянием переднего гласного (i или e) в последующем слоге. Исторически, кроме переднего умлаута, имел место также задний (или велярный) умлаут —ассимиляция под влиянием заднего гласного u. Для обозначения изменённой гласной в современном написании используется диакритический знак умлаут:

Mann — Männer ([a] — [ɛ])
Haus — Häuser ([au] — [oi], аналогично произношению eu как [oi])
Hof — Höfe ([o] — [œ])
Buch — Bücher ([u] — [y])
При отсутствии немецкой раскладки клавиатуры применяются следующие правила замены:

ä — ae
ö — oe
ü — ue
А ß что такое?
0
3 / 3 / 0
Регистрация: 08.04.2011
Сообщений: 13
15.04.2011, 23:19  [ТС]
Знак ß (эсцет, от нем. Eszett) — лигатура из ſz (в готическом шрифте) или ſs (в антикве), первым элементом которой является так называемое «длинное S». Ныне используется только в немецком языке, но до XIX века более или менее регулярно применялся практически во всех средневековых европейских языках с письменностями на латинской основе, особенно в курсиве.

В немецких словарях при упорядочении по алфавиту знак ß обычно приравнивается к ss. Следует помнить, что замена символом ß двух букв ss не всегда правомерна, т.к. использование символа ß подразумевает удлинение предшествующей гласной, тогда как ss — её укорочение.

Лигатура ß имеет только строчное начертание (хотя в Юникоде 5.1 есть и заглавная ẞ). При необходимости записать содержащее ß слово только заглавными буквами ß заменяется на SS. В тех случаях, когда такая замена приводила к образованию трех S подряд (например, в слове Maßstab), ранее рекомендовалось использовать SZ вместо SS или разделять слово дефисом: MASZSTAB, MASS-STAB. Ныне, когда последняя реформа немецкой орфографии отменила запрет на повторение трех одинаковых согласных подряд, это правило, видимо, больше не применяется. Также рекомендовалось использовать SZ там, где иначе бы возникала нежелательная омография.

Такая же замена ß на ss (или на sz, в указанных выше случаях) используется при наборе текста в условиях технических ограничений (в старой машинописи, на телеграфе и т. п.), а также при воспроизведении немецких имён и названий в других языках на латинской письменной основе.

В Швейцарии с 1906 года эсцет не употребляется, а всегда пишется ss. Причиной этого, возможно, было распространение пишущей машинки. На швейцарской единой раскладке клавиатуры нужно было освободить место для французских и итальянских букв (ç, à, é и è).

Не следует путать латинскую лигатуру ß и греческую строчную букву бета (β).

Компьютерные коды

В Unicode обозначается U+00DF. В версии 5.1 появился заглавный вариант — U+1E9E.
В HTML и XML строчная буква обозначается как «ß», заглавная же «ẞ»
1
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
16.04.2011, 00:35
Ципихович Эндрю,
Visual Basic
1
потом поставил до 100 тысяч
Есть волшебное число 65536
0
1705 / 574 / 74
Регистрация: 10.04.2009
Сообщений: 9,286
16.04.2011, 14:22
>Есть волшебное число 65536
Да знаю, просто к 10000 нолик прибавил и всё!!
U+00DF это и есть ChrW(223) – ß?
0
3 / 3 / 0
Регистрация: 08.04.2011
Сообщений: 13
16.04.2011, 14:32  [ТС]
Получается так. Я же постил, что у меня так его вычислить получилось
1
 Аватар для FearDog
15 / 15 / 14
Регистрация: 19.08.2012
Сообщений: 105
09.03.2022, 11:16
Оживим труп =)
Возникла задача вставить символ с кодом U+1F441. ChrW работает с символами до U+FFFD.
Как можно вставить символ из большего диапазона?
0
 Аватар для elanskie
22 / 18 / 4
Регистрация: 30.07.2013
Сообщений: 73
10.03.2022, 16:11
ChrW(56385)
0
 Аватар для FearDog
15 / 15 / 14
Регистрация: 19.08.2012
Сообщений: 105
10.03.2022, 23:08
Сорян, тупанул. Символы свыше 65535 являются суррогатными и состоят из двух подряд идущих символов. В моем случае U+1F441 = U+D83D и U+DC41 (символ с кодом 128065 это идущие подряд два символа 55357 и 56385)
Символ глаза даст код
Pascal
1
Selection = ChrW(55357) & ChrW(56385)
elanskie, ChrW(56385) - это только второй литерал
0
 Аватар для elanskie
22 / 18 / 4
Регистрация: 30.07.2013
Сообщений: 73
14.03.2022, 11:27
Visual Basic
1
2
Selection.InsertSymbol Font:="Segoe UI Emoji", CharacterNumber:=-10179, Unicode:=True
Selection.InsertSymbol Font:="Segoe UI Emoji", CharacterNumber:=-9139, Unicode:=True
0
 Аватар для elanskie
22 / 18 / 4
Регистрация: 30.07.2013
Сообщений: 73
11.11.2022, 14:06
Alex77755, Доброго времени суток . Как тогда вот такой символ вывести через макрос там более волшебного числа 65536, там аж 194564.
Миниатюры
Нестандартные символы  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.11.2022, 14:06
Помогаю со студенческими работами здесь

Как считать из файла нестандартные символы
Всем доброго времени суток! Задача: необходимо считать из файла нестандартные символы, такие как параграф (Dec: 167), знак отрицания...

Нестандартные символы в урл (access forbidden) APACHE
Здравствуйте! Пожалуйста, помогите настроить APACHE, чтобы в строке адреса браузера допускались нестандартные символы ("*" и...

Нестандартные символы в названии файла базы данных
Добрый день. Работаю с базой данных *.dbf использую C++builder6. Кинул на форму компоненты ADOConnection, DataSource, ADOQuery. При этом...

Нестандартные способы добыть дрова - или нестандартные дрова)
Еще расскажу, как я дрова добываю там, где люди все легкодоступное повытаскали. Или зимой это бывает полезно, если сухостоя найти не...

Нестандартные задания
1)Условие: У вас есть несколько камней известного веса W1, …, Wn. Напишите программу, которая распределит камни в две кучи так, что...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru