Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.06.2010, 23:50   #41
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Я кстати тоже удивлялся, почему Debug.print на Text ничего не пишет, а на Value пишет. Видать, есть разница.
В итоге предлагаю вообще сделать так:
Код:
Private Sub CommandButton3_Click()
    'Открытие строк и столбцов
    If ComboBox1 = "" Then MsgBox "Выберите дату", vbInformation: Exit Sub
        Dim cc As Range
        
    For Each cc In [d1:h1].Cells
        If cc.Value = Lab_Data.Caption Then
            Image1.BackColor = &HFF&
            cc.Columns.Hidden = False ' Открытие столбца
        End If
    Next

    For Each cc In [A4:A8].Cells
            If cc.Value = Lab_Data.Caption Then ' Условие для открытия строки
                Image1.BackColor = &HFF&
                cc.Rows.Hidden = False  ' Открытие строки
            End If
    Next
End Sub
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 24.06.2010, 23:53   #42
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

.Text - отображаемое значение, с учетом ширины ячейки, .Value - истинное хранимое
motorway вне форума Ответить с цитированием
Старый 25.06.2010, 00:33   #43
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Интересно, почему тогда в скрытых строках текст кодом виден, и почему работает этот код:
Код:
Sub tt()
Range("B1:E1") = "Test"
Range("B1:E1").EntireColumn.Hidden = True
Debug.Print Range("B1").Text 'возвращает "Test"
For Each cc In [B1:E1]
Debug.Print cc.Text ' и тоже возвращает "Test"
Next
End Sub
Я лично разницу не уловил, но она налицо

Понял - потому, что там формат "Custom - data".
Если в этих ячейках текст - ОК
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 25.06.2010 в 00:40.
Hugo121 вне форума Ответить с цитированием
Старый 25.06.2010, 00:45   #44
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Видимо, для текста это свойство возвращает то же значение. А для числовых данных - нет
motorway вне форума Ответить с цитированием
Старый 25.06.2010, 00:56   #45
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Да, мы тут рядом поэксперементировали с vlth:
Код:
Sub tt()
Range("B1:E1").NumberFormat = "@"
Range("B1:E1") = "123"
Range("B1:E1").EntireColumn.Hidden = True
Debug.Print Range("B1").Text 'возвращает "123"
For Each cc In [B1:E1]
Debug.Print cc.Text ' и тоже возвращает "123"
Next
End Sub
Если не ставить текстовый формат, то ничего не выводится.
И если написать так
Range("B1:E1") = 123
то тоже пусто.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 25.06.2010, 15:04   #46
alvazor
Форумчанин
 
Регистрация: 02.07.2009
Сообщений: 122
По умолчанию

Судя по всему, проблема вот в чем
Caption этикетки, записанный в конкретном формате даты, как текст (а Caption, насколько помню - это txt) и считывается обратно в том же виде (формате).
Value же ячейки, вне зависимости от установленного в ней формата даты, всегда будет представлен в формате системной даты.
Естественно, если одно и второе будут отличаться, сравнение не состоится.
Гляньте вложение - надеюсь, будет интересно. Головоломка целая!
Вложения
Тип файла: rar DateFormats.rar (9.0 Кб, 12 просмотров)
alvazor вне форума Ответить с цитированием
Старый 25.06.2010, 19:20   #47
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте alvazor.
"..Головоломка целая.." - в Вашем примере никакой "головоломки" не будет если прочесть в учебнике по Excel о Уровнях ячейки, форматах данных и его автоматической конвертации по подобию.
Евгений.
Teslenko_EA вне форума Ответить с цитированием
Старый 28.06.2010, 09:37   #48
alvazor
Форумчанин
 
Регистрация: 02.07.2009
Сообщений: 122
По умолчанию

Хорошо, когда можно почитать, Евгений....
И тему бы эту не открывали, в частности.
Дайте координаты этого учебника, если не трудно - а то в имеющихся у меня ничего путного по форматам нет. Вдруг в этом учебнике и о преобразовании форматов для ControlSource & RowSource что-нить найдется? И другим бы пригодилось, кто еще не дошел до уровня профессионала, но стремится -)
Алексей
alvazor вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрытый Лист segail Microsoft Office Excel 27 20.07.2009 11:41
макрос который будет копировать столбец А из закрытой книги Данные, и вставлять в книгу Сток в столбец B Utirka66 Microsoft Office Excel 8 06.07.2009 09:53
Скрытый режим VadEr Помощь студентам 5 07.04.2009 18:57
скрытый файл Bayazet Общие вопросы Delphi 4 24.12.2008 15:42
Скрытый файл Andr Безопасность, Шифрование 1 15.06.2007 12:29