powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / открытия нужных столбцов
25 сообщений из 25, страница 1 из 1
открытия нужных столбцов
    #36704093
segail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте.
Скажите, подскажите, как правильно создать условие, для открытия нужных столбцов?
VBA Excel
Код: plaintext
1.
2.
3.
4.
5.
Dim i As Integer
For i =  1  To  1 
	If Lab_Data.Caption = Cells(i,  3  +  383 ).Text Then
		'Открыть 31 столбец
	End If
Next
Открыть 31 столбец, включительно с найденной ячейкой вправо. Поиск начальной ячейки осуществляется в диапазоне с ячейки D1 до ячейки NW1, на основание условия
If Lab_Data.Caption = найденная ячейка Then
Lab_Data.Caption это дата которая рана дате в найденной ячейки .
От найденной ячейки включительно с ней открыть 31 столбец с право.
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36704099
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а что вы понимаете под фразой "открыть столбец"?
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36704106
segail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneа что вы понимаете под фразой "открыть столбец"?
Открытие диапазона по строкам
Rows(i & ":" & i + 2).Hidden = False
По столбцам не пойму как…
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36704110
segail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
segail,

Диапазон столбцов
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36704116
segail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
segail,
не один столбец а тридцать один.
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36704127
Фотография vlth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ActiveCell.EntireColumn.Resize(, 31).Hidden = False
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36704180
segail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vlth что-то я не правильно.
Необходимо открыть один столбец, найденного в диапазоне ячеек с ячейки D1 до ячейки NW1, то есть открыть один столбец, где ячейка с датой, которая по условию совпадает с датой объекта Lab_Data.Caption
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36704249
Фотография vlth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
segail, это всё уже было...

Замените Resize(, 31) на Offset(, 30)
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36704255
segail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vlth, Извиняюсь.
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36706269
segail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте.
Никак не могу открыть нужный столбец.
Необходимо на основание одной переменной
Dim i As Integer
For i = 4 To 8

одной кнопкой открывать строки и столбцы на выбранную дату. В примере я разделил это на две кнопки, не могу сообразить, как это все соединить в одно действие, под одну кнопку.
Да и столбцы открываются не правильно.
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36706298
segail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
segail,
Все, понял разобрался.
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36706555
segail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опять проблема, данный код открытие колонки на выбранную дату,
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Private Sub CommandButton4_Click()
        Dim i As Integer
        For i =  4  To  8 
            If Cells(i,  1 ).Text = Lab_Data.Caption Then
                Columns(i).EntireColumn.Hidden = False
            End If
        Next
End Sub
,зависит от дат которые расположен в строках.
Если даты в строках удалить ,то код не будет работать.
Значит, переменная и условие работает на строки, где проставлены даты, а открывает столбцы.
Подскажете, как открыть столбец?

пример выше
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36707098
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
segail,
Я так предлагаю:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
 Private Sub CommandButton4_Click()
    'Открытие столбцов
    Dim cc As Range
        For Each cc In [d1:h1].Cells
        If cc.Value = Lab_Data.Caption Then
            Image1.BackColor = &HFF&
            cc.Columns.EntireColumn.Hidden = False ' Открытие столбца
        End If
    Next
End Sub
 
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36707104
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну и соответственно можно объединить так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
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.EntireColumn.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

Я сам не знал, что есть разница между Text и Value в том, что Text не виден в скрытых столбцах почему-то...
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36707105
Фотография vlth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hugo121,

Пытался понять вопрос segail 'а - что у него не получается - так и не понял.
Теперь ещё твой ответ добавился... не менее загадочный.

Ты зачем по первой строке "побежал"? Или просто столбцы со строками перепутал?
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36707110
Фотография vlth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hugo121Text не виден в скрытых столбцах почему-то...

Проверил: виден.
Разница в том, что св-во Text - только для чтения, по-моему.
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36707114
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vlth, там надо столбцы открыть по значению в первой строке, и строки по значению в первом столбце. И в общем почти код и работал (немного напутано было в примере, правда теперь уже не помню в каком из 3-х форумов, где я ответил на этот вопрос ), но главная загвоздка была в том, что (я в первый раз с этим столкнулся, т.к. обычно Text не использую) - .Text в скрытом столбце не виден. А в скрытой строке наверное виден, раз строки открывались. Я заменил на .Value - заработало! Ну и в другом форуме тоже до этого дошли.
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36707118
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я проверял через Debug.print Cells(1,i).text - ничего не выводило.
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36707122
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vlth, проверь, интересный эффект - значения в строках выводит, а в столбцах нет:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
Private Sub CommandButton3_Click()
    'Открытие строк и столбцов
    If ComboBox1 = "" Then MsgBox "Выберите дату", vbInformation: Exit Sub
        Dim cc As Range
        
    For Each cc In [d1:h1].Cells
    Debug.Print cc.Text
        If cc.Value = Lab_Data.Caption Then
            Image1.BackColor = &HFF&
            cc.Columns.Hidden = False ' Открытие столбца
        End If
    Next

    For Each cc In [A4:A8].Cells
        Debug.Print cc.Text
            If cc.Value = Lab_Data.Caption Then ' Условие для открытия строки
                Image1.BackColor = &HFF&
                cc.Rows.Hidden = False  ' Открытие строки
            End If
    Next
End Sub
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36707129
Фотография vlth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hugo121vlth, там надо столбцы открыть по значению в первой строке, и строки по значению в первом столбце. И в общем почти код и работал (немного напутано было в примере, правда теперь уже не помню в каком из 3-х форумов, где я ответил на этот вопрос ), но главная загвоздка была в том, что (я в первый раз с этим столкнулся, т.к. обычно Text не использую) - .Text в скрытом столбце не виден. А в скрытой строке наверное виден, раз строки открывались. Я заменил на .Value - заработало! Ну и в другом форуме тоже до этого дошли.

А... ну если так...

Только у меня скрытый столбец всё-равно препятствием для чтения св-ва 'Text' не является:
Код: plaintext
1.
2.
Range("B5") = "Test"
Range("B5").EntireColumn.Hidden = True
Debug.Print Range("B5").Text 'возвращает "Test"
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36707141
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vlth, у меня такой код тоже нормально работает:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
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

А вот тот выше глючит. Почему? непонятно...
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36707153
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Разобрался - потому, что там формат "Custom - data".
Если в этих ячейках текст - ОК
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36707154
Фотография vlth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hugo121vlth, проверь, интересный эффект - значения в строках выводит, а в столбцах нет

Да, интересно: числа из скрытых столбцов в текст не хочет преобразовывать.
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36707163
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vlth,
да, точно, если вместо "Test" написать 123, то не выводит.
...
Рейтинг: 0 / 0
открытия нужных столбцов
    #36707166
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А вот так выводит:
Range("B1:E1") = "123"
Только сперва (или вероятно кодом можно) надо задать ячейкам текстовый формат. С General тоже не выводит.
...
Рейтинг: 0 / 0
25 сообщений из 25, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / открытия нужных столбцов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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