Форум пользователей Visio
http://visio.getbb.ru/

Не вставляется "AAA", но вставляется "4444"
http://visio.getbb.ru/viewtopic.php?f=6&t=1316
Страница 1 из 2

Автор:  powercat [ 23 мар 2018, 16:48 ]
Заголовок сообщения:  Не вставляется "AAA", но вставляется "4444"

Привет.
Что-то вообще не въезжаю-выезжаю.
Сделал шейп, в нем свойства, они через Ctrl+F9 привязаны к подшейпу - в общем все как обычно для отображения данных. Данные типа стринг.
Вложение:
3.png
3.png [ 65.29 Кб | Просмотров: 252 ]


Далее, пытаюсь закинуть данные через C# и получаю такой порнодокс. Вот такая строка "ФНД" при попытке вставки выдает ошиппку
Вложение:
1.png
1.png [ 12.29 Кб | Просмотров: 252 ]


А вот такая "111" - вставляется!
Вложение:
2.png
2.png [ 1.64 Кб | Просмотров: 331 ]


Предположив, что по неизвестной мне причине, визио принимает в ТЕКСТОВУЮ строку ЧИСЛО в кавычках без проблем, но не принимает текст в кавычках, делаю экран "\"ФНД\"". Текст принимается.
Таким образом, в поле, заранее определенное как текстовое, я могу вставить ЧИСЛО в одних кавычках, и ТЕКСТ - в двойных...
Мой моск в тупике - ШОЗАХЕР!

Автор:  god-udach [ 23 мар 2018, 17:04 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

Вы все никак не удосужитесь почитать про основы ShapeSheet!
Там текстовое значение всегда хранится в ячейке заключенным в кавычки "текст".
В VBA текст вписывается в ячейку заключенным в тройные кавычки
Sh.Cells("Prop.Row1").formula ="""текст"""
Sh.Cells("Prop.Row1").formula =char(34) & "текст" & char(34)

Автор:  powercat [ 23 мар 2018, 17:07 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

Это очевидно, что текст будет храниться в кавычках...это азы...
При чем тут VBA?
Вопрос в том, что текст, представляющий из себя число, закидывает нормально, а текст, представляющих из себя буквы - через экран с двойными кавычками.

Автор:  god-udach [ 23 мар 2018, 17:19 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

powercat писал(а):
текст, представляющий из себя число, закидывает нормально
вы разницу между текстом и числом не видите?
powercat писал(а):
представляющих из себя буквы - через экран с двойными кавычками
с тройными !

Автор:  powercat [ 27 мар 2018, 12:55 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

god-udach писал(а):
powercat писал(а):
текст, представляющий из себя число, закидывает нормально
вы разницу между текстом и числом не видите?
powercat писал(а):
представляющих из себя буквы - через экран с двойными кавычками
с тройными !


Видимо вы о чем-то своем )))))

Автор:  god-udach [ 27 мар 2018, 13:18 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

powercat писал(а):
Видимо вы о чем-то своем )))))
абсолютно верно, понять чего вы хотите чаще всего нереально!
Похоже на этом скромном форуме завелся тру-кодер уровня Эндрю Ципиховича
Вы просто находка для администрации форума: Создаете мощный флуд и являетесь инициатором всеобщего веселья !!!

Автор:  9rey [ 27 мар 2018, 17:28 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

powercat писал(а):
Это очевидно, что текст будет храниться в кавычках...это азы...

дак ты и передавай его в кавычках. а ты передаешь свое "ФНД" как число, без кавычек, и удивляешься еще.

Автор:  god-udach [ 27 мар 2018, 18:40 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

9rey в сообщении писал(а):
включи запись макросов, открой шейпшит, поменяй значение в любой ячейке, останови запись, смотри результат.
тут такой совет не катит, все по-взрослому, полная обфускация - даже названия ячеек на скриншотах замазаны!
Те кто попытается это взломать (если кому-то это будет нужно), просто переломают себе мозг от количества использованных Вами костылей. Только не от примененной защиты!
Оффтоп:
чувствую забанят меня местные админы за троллинг

Автор:  powercat [ 29 мар 2018, 11:07 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

god-udach писал(а):
powercat писал(а):
Видимо вы о чем-то своем )))))
абсолютно верно, понять чего вы хотите чаще всего нереально!
Похоже на этом скромном форуме завелся тру-кодер уровня Эндрю Ципиховича
Вы просто находка для администрации форума: Создаете мощный флуд и являетесь инициатором всеобщего веселья !!!


Если нереально понять мой вопрос - это значит, что вы его не поняли. Зачем вы тогда на него отвечаете? Посмотрим ваш ответ:

Вы все никак не удосужитесь почитать про основы ShapeSheet!
Читаю по мере необходимости под конкретную задачу.

Там текстовое значение всегда хранится в ячейке заключенным в кавычки "текст".
Это очевидно, т.к. это ТЕКСТ, т.е. строковая переменная. Посмотрите теперь текст моего поста - там указано, что из проги на C# я передаю в ячейку шейпшита то ТЕКСТ, то ЧИСЛО.

В VBA текст вписывается в ячейку заключенным в тройные кавычки
Sh.Cells("Prop.Row1").formula ="""текст"""
Sh.Cells("Prop.Row1").formula =char(34) & "текст" & char(34)
При чем тут VBA???

Где в вашем ответе пояснение поведения передаваемых из внешней проги переменных?
Если вы не в состоянии понять вопрос, то и не надо отвечать.

Автор:  powercat [ 29 мар 2018, 11:20 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

9rey писал(а):
powercat писал(а):
Это очевидно, что текст будет храниться в кавычках...это азы...

дак ты и передавай его в кавычках. а ты передаешь свое "ФНД" как число, без кавычек, и удивляешься еще.


В первом топике показываю же, что передаю и как:
Вот это число 1111 передаю так "1111" и оно принимается шейпшитом.
Вот это слово ФНД передаю так "ФНД" и оно не принимается, а принимается с экраном типа кавычки в кавычках.

В обоих случаях передается СТРОКОВАЯ ПЕРЕМЕННАЯ в кавычках. Теперь, если открыть шейпшит, то видно, что в нем 1111 хранится без кавычек, а ФНД - с кавычками.

Таким образом, вместо того, чтобы передавать в шейпшит число без кавычек, а строку в кавычках, приходится числу ставить одинарные, а строке двойные кавычки...Т.е. ввести руками - стандартно, передать из С# - нестандартно. В этом и вопрос - почему так.

Автор:  powercat [ 29 мар 2018, 11:23 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

god-udach писал(а):
9rey в сообщении писал(а):
включи запись макросов, открой шейпшит, поменяй значение в любой ячейке, останови запись, смотри результат.
тут такой совет не катит, все по-взрослому, полная обфускация - даже названия ячеек на скриншотах замазаны!
Те кто попытается это взломать (если кому-то это будет нужно), просто переломают себе мозг от количества использованных Вами костылей. Только не от примененной защиты!
Оффтоп:
чувствую забанят меня местные админы за троллинг


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

Автор:  powercat [ 29 мар 2018, 11:29 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

god-udach писал(а):
powercat писал(а):
Видимо вы о чем-то своем )))))
абсолютно верно, понять чего вы хотите чаще всего нереально!
Похоже на этом скромном форуме завелся тру-кодер уровня Эндрю Ципиховича
Вы просто находка для администрации форума: Создаете мощный флуд и являетесь инициатором всеобщего веселья !!!


Ого...бог кодеров почтил нас своим присутствием! Что же бог делает на форуме кодеров?? Может богу надо туда, в небо? Богу - богово?

Автор:  Tumanov [ 29 мар 2018, 11:41 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

Забаню всех.
Вопрос элементарный. Ответ дали.
Теперь начинаем в остроумии упражняться? Претензии предъявлять в ЛС. Здесь нечего спамить.

Автор:  god-udach [ 29 мар 2018, 11:49 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

Э как вас бомбит милейший!
powercat писал(а):
Таким образом, вместо того, чтобы передавать в шейпшит число без кавычек, а строку в кавычках, приходится числу ставить одинарные, а строке двойные кавычки...Т.е. ввести руками - стандартно, передать из С# - нестандартно. В этом и вопрос - почему так.
just because(c)
Это всем известная особенность механизма занесения разных типов данных в ячейку! Это надо просто запомнить и смириться
При чем тут VBA???
Вам просто посоветовали использовать макрорекордер, для получения VBA кода для простейших операций. Вы бы сразу увидели что ядро визио автоматом прописывает три кавычки! Ну а дальше переводите полученный код на что душе угодно!
Вам не нравятся мои ответы? Вы должны радоваться, что кто то теряет время на разьяснения вам.
Не считаю себя кодером, у меня и профессия другая. Но я точно знаю, что делает КАЖДАЯ СТРОКА моего кода

Автор:  9rey [ 29 мар 2018, 12:21 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

Давайте не будем никого банить. Просто не поняли друг друга. Автор знает как надо делать, просто не понимает почему так. Думаю, что при вводе в ручном режиме происходит проверка и движок сам подставляет кавычки, если надо. Программным образом проверки нет и надо делать все самому.

Автор:  nbelyh [ 29 мар 2018, 13:28 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

god-udach писал(а):
Но я точно знаю, что делает КАЖДАЯ СТРОКА моего кода

Неужели? :mrgreen:
IMHO, тут скорее вопрос восприятия, т.е. это субьъективно. То есть, это ты думаешь что знаешь, а на самом деле каждая строка твоего кода просто повышает уровень энтропии.
Как в той истории про смысл жизни (не помню как называется), где корабль пришельца сломался на нашей (тогда безлюдной) планете, но он не отчаялся, а создал человечество, и развивал его то тех пор, пока оно не смогло наконец изготовить ту самую сломавшуюся детальку для его корабля.

Автор:  powercat [ 29 мар 2018, 15:20 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

nbelyh писал(а):
god-udach писал(а):
Но я точно знаю, что делает КАЖДАЯ СТРОКА моего кода

Неужели? :mrgreen:
IMHO, тут скорее вопрос восприятия, т.е. это субьъективно. То есть, это ты думаешь что знаешь, а на самом деле каждая строка твоего кода просто повышает уровень энтропии.
Как в той истории про смысл жизни (не помню как называется), где корабль пришельца сломался на нашей (тогда безлюдной) планете, но он не отчаялся, а создал человечество, и развивал его то тех пор, пока оно не смогло наконец изготовить ту самую сломавшуюся детальку для его корабля.


Проще уточнить адрес памяти, который занимает каждая переменная ))

Автор:  powercat [ 29 мар 2018, 15:23 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

Tumanov писал(а):
Забаню всех.
Вопрос элементарный. Ответ дали.
Теперь начинаем в остроумии упражняться? Претензии предъявлять в ЛС. Здесь нечего спамить.


Пришел незлой админ и всех не забанил )))

Это ж природа человеческая, поумничать...потом, через месяц можно прибить флуд )) я, когда у меня был сайт, так и делал...пофлудят - потом удаляю все лишнее...Надо же выплеснуть подсознание )))

Никаких претензия ни к кому...ни в коем случае...наоборот, одни благодарности - без этого форума несколько серьезных моих прог не были бы никогда написаны!

Автор:  powercat [ 29 мар 2018, 15:25 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

9rey писал(а):
Давайте не будем никого банить. Просто не поняли друг друга. Автор знает как надо делать, просто не понимает почему так. Думаю, что при вводе в ручном режиме происходит проверка и движок сам подставляет кавычки, если надо. Программным образом проверки нет и надо делать все самому.


Да, похоже на то. Но странно, что поведение различается с остальными офисными приложениями мелкомягкого...

Автор:  powercat [ 29 мар 2018, 15:32 ]
Заголовок сообщения:  Re: Не вставляется "AAA", но вставляется "4444"

god-udach писал(а):
Э как вас бомбит милейший!
powercat писал(а):
Таким образом, вместо того, чтобы передавать в шейпшит число без кавычек, а строку в кавычках, приходится числу ставить одинарные, а строке двойные кавычки...Т.е. ввести руками - стандартно, передать из С# - нестандартно. В этом и вопрос - почему так.
just because(c)
Это всем известная особенность механизма занесения разных типов данных в ячейку! Это надо просто запомнить и смириться
При чем тут VBA???
Вам просто посоветовали использовать макрорекордер, для получения VBA кода для простейших операций. Вы бы сразу увидели что ядро визио автоматом прописывает три кавычки! Ну а дальше переводите полученный код на что душе угодно!
Вам не нравятся мои ответы? Вы должны радоваться, что кто то теряет время на разьяснения вам.
Не считаю себя кодером, у меня и профессия другая. Но я точно знаю, что делает КАЖДАЯ СТРОКА моего кода


Don't panic, Jeff! И твоя Тесла будет летать долго и надежно ))
Если вы даете ответы, и вы хотите их дать, то побольше пояснений! Если для меня очевидно, что критерий Кутателадзе не подразумевает деление по признаку ламинарности, то это совершенно неочевидно для программиста! И если он меня спросит, то, если мне не лень ответить, я отвечу максимально понятно. Так, примерно, отвечает один пользователь на форуме по С# - до тех пор, пока не прояснится...

Страница 1 из 2 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/