Страница: 1 |
Страница: 1 |
Вопрос: Помогите с Excel
Добавлено: 04.03.08 11:19
Автор вопроса:
Verd | ICQ: 276115817
Всем добрый день,помогите,пожалуйста чайнику с Excel
Задача следующая :
Есть строка,в ячейках имена пользователей.Необходимо,чтобы пользователь видел только те столбцы,в которых написано его имя,остальные колонки должны быть скрыты
Ответы
Всего ответов: 5
Номер ответа: 1
Автор ответа: Verd
ICQ: 276115817
Вопросов: 3
Ответов: 11
Профиль | | #1
Добавлено: 04.03.08 14:42
Сам разобрался,кому интересно,вот код :
For i = 1 To 10
r = i - 1
Range("A1".Select
If ActiveCell.Offset(0, r).Text <> "" Then
Columns(i).Select
Selection.EntireColumn.Hidden = True
End If
Next
Номер ответа: 2
Автор ответа: LonerWanderer
Вопросов: 18
Ответов: 66
Профиль | | #2
Добавлено: 04.03.08 15:03
Можно проще:
If Cells(1, i).Value = "" Then Columns(i).Hidden = True
Next i
Номер ответа: 3
Автор ответа: LonerWanderer
Вопросов: 18
Ответов: 66
Профиль | | #3
Добавлено: 04.03.08 15:08
Поправка:
If Cells(1, i).Value <> "" Then Columns(i).Hidden = True
Next i
Тестировал на пустую ячейку и забыл изменить
здесь.
Кстати - по первоначальному условию правильно именно в 1-м вариант. Ну или во втором вместо "" забить "Вася" (имя пользователя)
Ну когда будет предпросмотр и редактирование своих сообщений? Очень не хватает.
Номер ответа: 4
Автор ответа: Verd
ICQ: 276115817
Вопросов: 3
Ответов: 11
Профиль | | #4
Добавлено: 04.03.08 16:19
Спасибо за участие,так действительно проще
Номер ответа: 5
Автор ответа: LonerWanderer
Вопросов: 18
Ответов: 66
Профиль | | #5
Добавлено: 04.03.08 16:38
А если книгу открывают разные пользователи, то при открытии другим пользователем столбцы от прежнего останутся скрытыми + скроются столбцы данного пользователя.
Чтобы этого избежать сначала все столбцы надо сделать видимыми.
Для этого сразу после FOR нужно добавить:
For i = 1 To 10
If Columns(i).Hidden = True Then Columns(i).Hidden = False
If Cells(1, i).Value .....