powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Formatnumber (22.2222)
25 сообщений из 82, страница 2 из 4
Formatnumber (22.2222)
    #32268441
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ушел пить пиво. Приду - че нибудь напишу
(держите меня семеро )
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268442
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот надо чтобы SQL запрос(фукция formatnumber) понимала правильно мои числа хранящиеся базе!!
Бля-ааааать....

SQL запрос(фукция форматнумбер) без твоих изъебств правильно поймет числа, хранящиеся в базе.

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

А в духовный мир ты уж лучше как-нибудь без меня. Нахуй, нахуй...
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268445
Фотография Nrisimha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин че нельзя не материться, если не знаеш ответ, зачем хлам писать?
Самое сложное не высказаться! Какие все эмоциональные пошли! Разве не было у тебя такого что когда ты знал мало, над тобой прикалывались?
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268447
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тебе в первом же ответе написали:

А откуда взялось число 33,3333? Это не одно число, а два числа через запятую!
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268448
Фотография Nrisimha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в числовом поле таблицы базы данных microsoft access 2000
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268453
Фотография Nrisimha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как сделать так чтобы в запросе перед функцией formatnumber число с запятой преобразовывалось в число с точкой???
Код: plaintext
1.
SELECT [Таблица1].[id_my], [Таблица1].[Summa], formatnumber([Summa]) AS Выражение1
FROM Таблица1;

Formatnumber в данном случае понимает если дробный разделитель (.) тогда он правильно преобразовывает число хранящееся в таблице!
например :
fromatnumber ( 555,777 ) = 555
formatnumber ( 555.777 ) = 555,78
Как сделать так чтобы число с запятой преобразовывалось в число с точкой?
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268457
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Добрый вечер всем, это я вернулся. Офонареть - не встать, сколько наматерили. И наху... то есть зачем, спрашивается? Ведь видите, что человек не понимает. Если его обматерить, то, по-вашему, он поймет? В лучшем случае обидится и будет всем рассказывать, какой тут ху... то есть поганый форум. Оно вам надо?

Короче, так. Сейчас я сам попробую.

> > А откуда взялось число 33,3333? Это не одно число, а два числа через запятую!
> в числовом поле таблицы базы данных microsoft access 2000

Это не в числовом поле таблицы. Это только на экране. В самой таблице числа сидят в форме, не зависящей от того, как они выводятся на экран. Когда число из таблицы подставляется в функцию, оно подставляется не с экрана. Так что не имеет никакого значения, как оно выглядит на экране.

Все.

А симхА на иврите, между прочим, радость.
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268460
Фотография Nrisimha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо! Просто я подключаюсь к ACCESS через ADO в своих программах на VB6.0 sp5 . Вот он по разному понимает число с запятой и сточкой! На первых порах когда я только начинал писать программу , ко мне обратился бухгалтер что не правильно сохраняются числа в программе. Тоже из-за этого! Я написал код который сам все делает за пользователя! Но в Access этот код не вставиш! Может подскажите как сделать из этого числа стринг, а потом поменять в этом стринге запятую на точку, а потом из стринга опять сделать число! Какими формулами(функциями) сделать эти операции!

p/s Вопрос по другой теме, у вас небыло идей воскресить язык и дать возможность обучаться ему людям ,который щас считается мертвым - Санскрит! Может люди тоже смогут ему обучаться!
Кстати очень интересно что на иврите симхА значит радость!Спасибо не знал!
Нрисимха и Симха - на санскрите почти одно и тоже этому слову около 5тыс лет!
С уважением Вадим!
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268464
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
> Может подскажите как сделать из этого числа стринг, а потом поменять в этом стринге запятую на точку, а потом из стринга опять сделать число!

s = CStr(a)
s = Replace(s, ",", ".")
a = Val(s)

Но если все происходит на одном и том же компьютере, то вроде бы нет никакой необходимости менять запятую на точку. Если в настройках стоит хоть запятая, хоть точка, функции CStr и Val будут работать с одинаковым форматом. Или я не прав?

А откуда взялся стринг? Зачем он там? Почему нельзя прямо передавать числа?
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268465
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А насчет санскрита - так это в Индии его пусть возрождают, если хотят. Мы в Израиле возрождаем иврит. :^)
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268469
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nrisimha, дай код функции...
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268490
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fromatnumber ( 555,777 ) = 555
formatnumber ( 555.777 ) = 555,78

Я прошу прощения, за то, что вернулся из нирваны, но...

Судя по предыдущим постам, (я опять прошу прощения за свою несдержанность у всех, кроме автора этого топика. Для автора: топик - это тема, пост - сообщение) проверка различий между

fromatnumber ( 555,777 )

и

formatnumber ( 555.777 )

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

В VBA запятая (,) - разделитель аргументов. Т.е. запись
Код: plaintext
Переменная = Функция ( 1 , 2 ) 

говорит ему (интерпретатору, или одноименному мужику), что надо вызвать "Функцию", сказать ей, что 1-й аргумент равен "1", второй равен "2", а то, что она вернула, положить в переменную. Если чего не вышло, сказать об ошибке.

В VBA точка (.) - разделитель целой и дробной части. Т.е.
Переменная = Функция(1.2)
говорит интерпретатору, что надо вызвать функцию, передать ей один аргумент - число одна целая две десятых, а возвращаемое значение функции положить сам знаешь куда.

В SQL разделитель аргументов тоже запятая. Но Access'овский конструктор - вещь заумная. Настолько заумная, что у нее у самой ум иногда за разум заходит.

Т.е. она (он - конструктор) смотрит на формат записи, например, дат, и видит, что даты должны на здешнем компьютере писаться так: День.Месяц.Год. И так его и пишет.

Спасибо ему.

Но интерпретатор передает свои данные дальше. Ядрушку Jet. Который, коль скоро ему говорят дату в виде строчки "dd.mm.yy", не умеет понимать строчек, записанных в формате, отличающемся от "mm/dd/yy". Он тебе об этом не скажет. Сам попытается все сделать. Только не всегда это выходит правильно.

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

А для разделения разрядов при написании программ надо писать точку. И точка.

Как пишутся эти разделители в полях - тебя заботить не должно, об этом позаботились программисты Микрософт. Если не лениво, зайди в языковые настройки виндовс, и поменяй там разделитель дробной части на какую-нибудь букву "Зю". Везде в полях твоей программмы, во всех полях любое число будет написано в виде 111"зю"05. А в редакторе программ - 111.05. Потому что программисту должно быть наплевать на региональные настройки. Он должен знать, что хранение числа в памяти от них не зависит.
----------------------------------
Что-то длинновато вышло. (с) Нуф-Нуф

Ну и х. с ним. (с) я
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268498
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго всем времени суток!
2 Nrisimha
Ты бы привел все-таки текст своей таинственной функции formatnumber
Скорее всего проблемы в ней.Например различная трактовка функциями Val и Clbl региональных разделителей.
Note The Val function recognizes only the period (.) as a valid decimal separator. When different decimal separators are used, as in international applications, use CDbl instead to convert a string to a number. ( Из Хелпа на VB6)
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268506
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 VIG, Сенин Викотор и все все все
Ты бы привел все-таки текст своей таинственной функции formatnumber
Это стандартная функция
Код: plaintext
1.
2.
3.
String.FormatNumber (Expression, [NumDigitsAfterDecimal As Long = - 1 ], 
[IncludeLeadingDigit As VbTriState = vbUseDefault], 
[UseParensForNegativeNumbers As VbTriState = vbUseDefault], [GroupDigits As 
VbTriState = vbUseDefault]) As String


Ща блин попробую числа с плавающей точкой загнать...
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268509
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин держите меня семеро

Какого хуя этот человек трахал мозг всему форуму?
Создал таблицу. В которой числовое поле. С плавающей точкой. 8 байт
Написал запрос.
Select FormatNumber([Таблица1].[Field1]) From [Таблица1]
Выдает все как надо
Поменял десятичный разделитель на запятую
Выдает все как надо
Поменял десятичный разделитель на букву "й"
Выдает все как надо

Внимание вопрос - какого хуя???
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268515
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создал таблицу. В которой числовое поле.

Поменял десятичный разделитель на запятую
...


А зачем?!
:((
Тебе мало, того, что было?..
Ты не знаешь, что "." в вба не зависит от региональных настоек?..
Ты еще проверь, что мсгбокс 111 напишет "111"... :(((
Эх...
выпил еще 50 и упал на клаву
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268517
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты не знаешь, что "." в вба не зависит от региональных настоек?..
Знаю
Но раз обещал проверить - проверил. Даже с буквой "й"
Вдруг в запросе FormatNumber работает как-то не так? (так не бывает конечно, но ведь всякое бывает..)
Проверил.
Обматерился.
Маарроооооссс мааароооооооооосс
Маааееевооо каааняяяяя
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268522
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 ЛП
Позор на мои седины! Сбило с толку то, что имя такой почтенной функции было написано строчными буквами . :)
P.S А материться все таки не надо! Хотя по существу -согласен.
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268539
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S А материться все таки не надо!
Да я стараюсь... Я ведь кароший (белый и пушистый)...
Но иногда не получается.
Прощения просить - гнилое дело, ибо завтра все равно опять не получится...
И вообще. Мы матом не ругаемся, мы им разговариваем. И думаем.
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32268639
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет VIG!
и на мою голову - позор - по тем же причинам.

2Nrisimha
Если еще не понял :)
FormatNumber (33,3333) - это значит отформатировать число 33 (целое- тридцать три) с выводом 3333 знаком (см. описание функции в посте ЛП). Запятая служит разделителем аргументов функций. Точка (в VBA) служит разделителм целой и бробной части. Если даже Число и отображаеться на экране как 33,3333 - то в программу (если это Число, а не текст) все-равно ляжет как 33.3333

==
? FormatNumber (33333.3333, 2,vbTrue,vbTrue,vbTrue ) вернет 33 333,33
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32269290
Фотография Nrisimha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смотрите сами господа колхозные дворяне!!!!

1й - вариант:




И даже так не работает!!!!!

2й - вариант:






Ну и как же здесь быть!!!!????
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32269298
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин да у тебя в контроле наверняка формат какой-нибудь стоит. Типа 0 знаков после запятой.
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32269300
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Родной! (с) Киндзадза
А ты можешь юзать вместо этой экзотики старый добрый Format?
debug.? format(123456.456988,"# ##0.00")
123 456,46
C ним все будет в прядке.
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32269303
Фотография Nrisimha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ни каких форматов, а почему тогда в соседнем показывает три после запятой??? (никаких форматов) Хе-хе! :-)
А вы думали что я обманываю!!!
...
Рейтинг: 0 / 0
Formatnumber (22.2222)
    #32269306
Фотография Nrisimha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
та же фигня с formatom!!! :-(
...
Рейтинг: 0 / 0
25 сообщений из 82, страница 2 из 4
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Formatnumber (22.2222)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]