Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Ввод через форму десятичных чисел. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Ввод через форму десятичных чисел.
Ввод через форму десятичных чисел.
pechkin Дата: Вторник, 30.09.2014, 18:02 | Сообщение № 1
Группа: Проверенные
Ранг: Обитатель
Сообщений: 329
Репутация: 49 ±
Замечаний: 0% ±

2003
Здравствуйте! И снова обращаюсь за помощью. По сути у меня два вопроса по одному файлу, так что прошу прощения, если в данном случае правила все-таки нарушены... Сделал примитивную форму для ввода чисел в активную ячейку. Желтые кнопочки вводят числа как-бы в саму форму а потом через кнопку ОК в ячейку. Здесь проблемы с вводом десятичных чисел вроде бы нет. НО. Хотелось бы сделать ввод напрямую (как голубые кнопочки).Подскажите - что там нужно поменять? Десятичные числа не вводятся... Вернее знак разделения как бы непонятен или еще что.И по ходу вопрос. Возможно ли и как сделать так, чтобы при активной форме можно мышкой было бы активировать другую ячейку для ввода чисел? Спасибо!
К сообщению приложен файл: 0170347.xls (43.0 Kb)
 
Ответить
СообщениеЗдравствуйте! И снова обращаюсь за помощью. По сути у меня два вопроса по одному файлу, так что прошу прощения, если в данном случае правила все-таки нарушены... Сделал примитивную форму для ввода чисел в активную ячейку. Желтые кнопочки вводят числа как-бы в саму форму а потом через кнопку ОК в ячейку. Здесь проблемы с вводом десятичных чисел вроде бы нет. НО. Хотелось бы сделать ввод напрямую (как голубые кнопочки).Подскажите - что там нужно поменять? Десятичные числа не вводятся... Вернее знак разделения как бы непонятен или еще что.И по ходу вопрос. Возможно ли и как сделать так, чтобы при активной форме можно мышкой было бы активировать другую ячейку для ввода чисел? Спасибо!

Автор - pechkin
Дата добавления - 30.09.2014 в 18:02
RAN Дата: Вторник, 30.09.2014, 19:03 | Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Ви хочите гемор? Их есть у меня.
К сообщению приложен файл: 5244518.xls (52.5 Kb)


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеВи хочите гемор? Их есть у меня.

Автор - RAN
Дата добавления - 30.09.2014 в 19:03
pechkin Дата: Вторник, 30.09.2014, 20:22 | Сообщение № 3
Группа: Проверенные
Ранг: Обитатель
Сообщений: 329
Репутация: 49 ±
Замечаний: 0% ±

2003
RAN, таки ДА! ПрАшу пардона, но после ввода третьего (десятичного) знака после запятой Ваша канитель негодная ? Шо- то я не понял...Этот гембель совсем или где? Спасибо!
 
Ответить
СообщениеRAN, таки ДА! ПрАшу пардона, но после ввода третьего (десятичного) знака после запятой Ваша канитель негодная ? Шо- то я не понял...Этот гембель совсем или где? Спасибо!

Автор - pechkin
Дата добавления - 30.09.2014 в 20:22
RAN Дата: Вторник, 30.09.2014, 20:33 | Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Из текстбокса в ячейку отправляется текст, который в определенный момент текст, а в следующий - число. Это и есть гемор!


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеИз текстбокса в ячейку отправляется текст, который в определенный момент текст, а в следующий - число. Это и есть гемор!

Автор - RAN
Дата добавления - 30.09.2014 в 20:33
pechkin Дата: Вторник, 30.09.2014, 20:41 | Сообщение № 5
Группа: Проверенные
Ранг: Обитатель
Сообщений: 329
Репутация: 49 ±
Замечаний: 0% ±

2003
Как я понял - данная задача не имеет простого решения <_< Спасибо!
 
Ответить
СообщениеКак я понял - данная задача не имеет простого решения <_< Спасибо!

Автор - pechkin
Дата добавления - 30.09.2014 в 20:41
Саня Дата: Вторник, 30.09.2014, 22:46 | Сообщение № 6
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
[vba]
Код
Private msNum As String
Private mbDigSep As Boolean

Private Sub CommandButton14_Click()
     ActiveCell.Value = CDbl_(",")  ' ActiveCell.Value & ","
End Sub

Private Sub CommandButton6_Click()
     ActiveCell.Value = CDbl_(6)    'ActiveCell.Value & 6
'Me.Hide
End Sub

Private Sub CommandButton7_Click()
     ActiveCell.Value = CDbl_(7)    'ActiveCell.Value & 7
'Me.Hide
End Sub

'...

Function CDbl_(sSgn As String) As Double
     If sSgn = "," Then
         If mbDigSep Then
             sSgn = ""
         Else
             mbDigSep = True
         End If
     End If

     msNum = msNum & sSgn
     CDbl_ = CDbl(msNum)
End Function
[/vba]
К сообщению приложен файл: 4498844.xls (59.5 Kb)
 
Ответить
Сообщение[vba]
Код
Private msNum As String
Private mbDigSep As Boolean

Private Sub CommandButton14_Click()
     ActiveCell.Value = CDbl_(",")  ' ActiveCell.Value & ","
End Sub

Private Sub CommandButton6_Click()
     ActiveCell.Value = CDbl_(6)    'ActiveCell.Value & 6
'Me.Hide
End Sub

Private Sub CommandButton7_Click()
     ActiveCell.Value = CDbl_(7)    'ActiveCell.Value & 7
'Me.Hide
End Sub

'...

Function CDbl_(sSgn As String) As Double
     If sSgn = "," Then
         If mbDigSep Then
             sSgn = ""
         Else
             mbDigSep = True
         End If
     End If

     msNum = msNum & sSgn
     CDbl_ = CDbl(msNum)
End Function
[/vba]

Автор - Саня
Дата добавления - 30.09.2014 в 22:46
RAN Дата: Вторник, 30.09.2014, 23:02 | Сообщение № 7
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Саня, все мои варианты тянут до 1,1234567. 1,2345678 превращается в 12 345 678.
Твой вариант тянет 1 запись. Для второй записи требуется закрытие формы.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеСаня, все мои варианты тянут до 1,1234567. 1,2345678 превращается в 12 345 678.
Твой вариант тянет 1 запись. Для второй записи требуется закрытие формы.

Автор - RAN
Дата добавления - 30.09.2014 в 23:02
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Ввод через форму десятичных чисел.
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!