Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,323

Long из двух String

09.06.2017, 13:48. Показов 1148. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
здравствуйте, делаю так:
Visual Basic
1
ЦенаLong = (Trim(y(b - 2))) & "," & (Trim(y(b)))
где (Trim(y(b - 2))) = 33, а (Trim(y(b))) = 14, пытаюсь получить 33,14 - получаю облом, как нужно? спасибо
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.06.2017, 13:48
Ответы с готовыми решениями:

Перевод строки с числами с String в Long
скажите почему на строке перевода выдает ошибку Переполнение (ошибка 6) ведь справка говорит данные Long Содержит знаком 64-разрядных...

Как объявить переменные, которые далеко не String, Long и т.д
Здравствуйте, перебираю старые поделки Set Объект_таблица_строка_ячейка_в_документе = ActiveDocument.Tables(1).Rows(1).Cells(2).Range ...

Перевод из String в long long
Мне нужна функция для перевода из String в long long.Функция atoi(const char* str) работает только с констатным масивом символов а мне...

12
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
09.06.2017, 14:19
Почему Long ? Должно быть Single или Double

Visual Basic
1
Цена_Sng =val( (Trim(y(b - 2))) & "." & (Trim(y(b))))
или
Visual Basic
1
Цена_Sng = csng((Trim(y(b - 2))) & "," & (Trim(y(b))))
1
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
09.06.2017, 14:23
А Вы попытайтесь получить 33.14
Только ЦенаLong задайте нужный тип

Добавлено через 1 минуту
Прекрасно работает:
Visual Basic
1
2
Dim x As Double
x = "33" & "." & "14"
1
09.06.2017, 14:25

Не по теме:

Option Strict на вас нет. :D

0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
09.06.2017, 14:30
Должно быть Single или Double
Отнюдь!
Ни одно из них! Корректней всего специальный тип! Currency

Добавлено через 2 минуты
Этот тип, кстати, часто работает корректней чем округлённый дабл
1
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,323
09.06.2017, 16:05  [ТС]
не взлетело:
Visual Basic
1
2
3
Debug.Print (Trim(y(b - 3)))
                Debug.Print (Trim(y(b - 1)))
                Ущерб_одной_строкиCurrency = (Trim(y(b - 3))) & "." & (Trim(y(b - 1)))
Debug.Print (Trim(y(b - 3))) = 191
Debug.Print (Trim(y(b - 1))) = 50
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
09.06.2017, 16:52
а с какого перепугу должно было взлететь?
что есть объявление переменных?
есть преобразование?
0
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,323
09.06.2017, 17:10  [ТС]
Ущерб_одной_строкиCurrency - Currency, остальные стринговые
Цитата Сообщение от Alex77755 Посмотреть сообщение
есть преобразование?
это как делается?
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
09.06.2017, 17:19
1. Option Explicit
2. объявление типов данных
3. преобразование! в гугле забанили? в украине живешь?
http://www.programm-school.ru/... e_vba.html
Вложения
Тип файла: doc Типы данных.doc (40.0 Кб, 2 просмотров)
0
09.06.2017, 17:33

Не по теме:

Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
это как делается?
:facepalm: 8 лет на форуме прошли зря :D

0
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,323
10.06.2017, 10:02  [ТС]
спасибо, всё равно не склеивается...
Visual Basic
1
2
3
4
5
6
7
8
9
If IsNumeric(Trim(y(b - 3))) And IsNumeric(Trim(y(b - 1))) Then
                    Рубли = CLng(Trim(y(b - 3)))
                    Копейки = CLng(Trim(y(b - 1)))
                    Debug.Print Рубли
                    Debug.Print Копейки
                    'склеиваем рубли и копейки, третье слово с конца и предпоследнее слово, разделителем является точка
                    Ущерб_одной_строкиCurrency = Рубли & "." & Копейки
                    Debug.Print Ущерб_одной_строкиCurrency
End If
Добавлено через 1 час 22 минуты
Цитата Сообщение от Hugo121 Посмотреть сообщение
Dim x As Double
x = "33" & "." & "14"
в ВБА не работает

Добавлено через 51 секунду
вау, так:
Visual Basic
1
2
Dim x As Double
x = "33" & "," & "14"
работает
0
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
10.06.2017, 21:49
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
в ВБА не работает
- Вам сколько лет? Молодёжь так бескомпромиссна, и всегда всё знает лучше всех...
У меня вот на работе работает, а дома отдыхает. Всё как положено
Никто кстати не в курсе, где в Вин10 настраиваются эти разделители? Или тут играет роль что выставлено в Экселе? Как-то ранее не вникал, обычно делал универсально:
Visual Basic
1
2
3
4
    Dim x As Double, sep As String
    sep = Mid(1 / 2, 2, 1)
 
    x = "33" & sep & "14"
1
 Аватар для pashulka
4138 / 2242 / 940
Регистрация: 01.12.2010
Сообщений: 4,624
10.06.2017, 22:01
Типо универсально, ибо для функции Val разделитель всегда точка .

Visual Basic
1
2
3
t1 = "33"
t2 = "14"
n = Val(t1 & "." & t2)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.06.2017, 22:01
Помогаю со студенческими работами здесь

Требуется написать функцию long long pow(long long a, unsigned int p), которая возводит число a в степень p
Требуется написать функцию long long pow(long long a, unsigned int p), которая возводит число a в степень p и возвращает ap. Помогите...

Преобразование string в long (String из сокета)
Здравствуйте, пакетом приходит число, хочу это число преобразовать к типу long. int bytesRead; string returnstr; bytesRead =...

Из String в Long
Почему когда я передаю 12-ти значное число из String в Long, оно обрезается до int? String num1 = "380456789012"; //12 чисел...

Long To String
Как в C++ Builder преобразовать переменную типа long в string?

inet_ntop (ip long to ip string)
#include <iostream> #include <string> #include <arpa/inet.h> int main() { int32_t zxc = 1438179584; char buffer; ...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru