powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Изменение типа проверки данных
15 сообщений из 15, страница 1 из 1
Изменение типа проверки данных
    #38351919
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пытаюсь программно поменять тип проверки данных в ячейке:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
        Set mxlSheet = Application.ActiveSheet
        strPosuda = mxlSheet.Cells(3, 5).Value
           
        With mxlSheet.Cells(4, 5).Validation

            .Delete
            
            If strPosuda = "колба" Then
                .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="25;50;100;200;250;500;1000;2000"
            ElseIf strPosuda = "цилиндр" Then
                .Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator:=xlBetween
            End If
                
            .IgnoreBlank = True
            .InCellDropdown = True
            .InputTitle = ""
            .ErrorTitle = ""
            .InputMessage = ""
            .ErrorMessage = ""
            .ShowInput = True
            .ShowError = True

        End With
    
    End If


сам тип меняется, т.е. квадратик со стрелочкой справа от ячейки появляется или исчезает. А вот с данными - косяк. Набор значений для списка показывает в одну строку и он остается независимо от типа проверки.
Прошу помочь.
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38351923
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КД,

Для VBA разделитель данных списка запятая , а не точка-с-запятой:
Код: vbnet
1.
Formula1:="25,50,100,200,250,500,1000,2000"
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38352126
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
The_Prist, спасибо большое!
Это меня макрос, гад, с толку сбил.
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38447714
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А если я десятичные дроби вгоняю как элементы списка, то их запятые тоже воспринимаются как разделители. Как быть?
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38447728
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для десятичных разделитель целой и дробной части - точка.
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38448058
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Т.е., если они у меня из массива берутся (а он, в свою очередь, по другим ячейкам составляется) - то Replace предварительно, а потом уже в список добавлять?
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38448080
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КД,

все верно. Заменяете разделители на точки и потом уже...
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38448336
kuklp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
КД, еще замечание - при таком способе организации списка строка не может быть длиней 255 символов(разделители тоже в счет).
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38449979
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В длину списка пока не уперся, вроде бы не грозит. А, кстати, как обходится?
А уперся в то, что список-то из десятичных дробей сформировал, но из-за разделителя дробной части в виде точки их теперь в формулах использовать непонятно как.
Получается значения с запятыми в список не лезут, а с точками - в формулы.
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38450043
Фотография lbppb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КДВ длину списка пока не уперся, вроде бы не грозит. А, кстати, как обходится?
А уперся в то, что список-то из десятичных дробей сформировал, но из-за разделителя дробной части в виде точки их теперь в формулах использовать непонятно как.
Получается значения с запятыми в список не лезут, а с точками - в формулы.

Я бы создал список на скрытом листе с теми значениями и форматами, что нужно, а затем передал бы ссылку на список в Formula1. Еще можно поменять в настройках как Excel воспринимает точки и запятые. Последнее ставит вопрос о необходимости знать какие настройки используются на клиентской машине и возможно адаптировать значения под каждый конкретный случай.
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38450262
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем!
Ладно, сделаю через ссылку на ячейки на этом же листе, благо что всего 2 значения в списке. Но вообще-то не айс.
Неужели Microsoft не мог додуматься в качестве разделителей использовать какие-н. экзотические символы?
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38450294
Фотография lbppb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КДСпасибо всем!
Ладно, сделаю через ссылку на ячейки на этом же листе, благо что всего 2 значения в списке. Но вообще-то не айс.
Неужели Microsoft не мог додуматься в качестве разделителей использовать какие-н. экзотические символы?

Экзотические символы тоже не айс. Было бы правильно, если бы validation мог принимать в качестве аргумента как range, так и скажем массив или список.
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38450427
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так Range он принимает, равно как и список. Или о каких объектах речь?
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38450466
Фотография lbppb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КДТак Range он принимает, равно как и список. Или о каких объектах речь?

Я же пишу, что КАК range, ТАК И массив (array) или список (collection, dictionary etc).
...
Рейтинг: 0 / 0
Изменение типа проверки данных
    #38450485
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пардон.
Пятница. Вечер. Туплю.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Изменение типа проверки данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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