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

Вход

Регистрация

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

 

= Мир MS Excel/Как сделать автодобавление столбца(ов) - Мир MS Excel

Старая форма входа
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как сделать автодобавление столбца(ов) (Макросы Sub)
Как сделать автодобавление столбца(ов)
AmonRA2010 Дата: Пятница, 21.02.2014, 09:29 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Коллеги Доброе утро.
Есть 1 проблема.
2. Как отображать столбец(ы), если выполняется значение. В таблице по умолчанию 12 столбцов, если значение в необходимой ячейки меняется отображаются/скрываются столбцы?
К сообщению приложен файл: 3471490.xlsx (10.1 Kb)


Сообщение отредактировал AmonRA2010 - Пятница, 21.02.2014, 10:48
 
Ответить
СообщениеКоллеги Доброе утро.
Есть 1 проблема.
2. Как отображать столбец(ы), если выполняется значение. В таблице по умолчанию 12 столбцов, если значение в необходимой ячейки меняется отображаются/скрываются столбцы?

Автор - AmonRA2010
Дата добавления - 21.02.2014 в 09:29
Stormy Дата: Пятница, 21.02.2014, 10:36 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 357
Репутация: 12 ±
Замечаний: 0% ±

Excel 2010
В пример написано про скрытие. По значению в ячейке нужно скрывать/отображать столбцы или все таки добавлять? Если добавлять, то что будет в конце концов с добавленными ведь про удаление слова не было.


Место для рекламы.
 
Ответить
СообщениеВ пример написано про скрытие. По значению в ячейке нужно скрывать/отображать столбцы или все таки добавлять? Если добавлять, то что будет в конце концов с добавленными ведь про удаление слова не было.

Автор - Stormy
Дата добавления - 21.02.2014 в 10:36
AmonRA2010 Дата: Пятница, 21.02.2014, 10:47 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Извиняюсь, нужно именно скрывать/отображать.
 
Ответить
СообщениеИзвиняюсь, нужно именно скрывать/отображать.

Автор - AmonRA2010
Дата добавления - 21.02.2014 в 10:47
Stormy Дата: Пятница, 21.02.2014, 12:02 | Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 357
Репутация: 12 ±
Замечаний: 0% ±

Excel 2010
Просто это можно сделать так. Но, возможно, у наших гуру будет и более интересное решение.

[vba]
Код
Sub Hide()
If Range("C3") = 1 Then
         Columns("P:Q").Select
      Selection.EntireColumn.Hidden = True
     End If
      If Range("C3") <> 1 Then
      Columns("O:R").Select
      Selection.EntireColumn.Hidden = False
      Range("J22").Select
       End If
End Sub
[/vba]


Место для рекламы.

Сообщение отредактировал Stormy - Пятница, 21.02.2014, 12:04
 
Ответить
СообщениеПросто это можно сделать так. Но, возможно, у наших гуру будет и более интересное решение.

[vba]
Код
Sub Hide()
If Range("C3") = 1 Then
         Columns("P:Q").Select
      Selection.EntireColumn.Hidden = True
     End If
      If Range("C3") <> 1 Then
      Columns("O:R").Select
      Selection.EntireColumn.Hidden = False
      Range("J22").Select
       End If
End Sub
[/vba]

Автор - Stormy
Дата добавления - 21.02.2014 в 12:02
AmonRA2010 Дата: Пятница, 21.02.2014, 12:55 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Просто это можно сделать так. Но, возможно, у наших гуру будет и более интересное решение.

Поставил макрос в табличку, не хочет работать(
К сообщению приложен файл: 4858978.xlsm (15.6 Kb)
 
Ответить
Сообщение
Просто это можно сделать так. Но, возможно, у наших гуру будет и более интересное решение.

Поставил макрос в табличку, не хочет работать(

Автор - AmonRA2010
Дата добавления - 21.02.2014 в 12:55
Stormy Дата: Пятница, 21.02.2014, 13:27 | Сообщение № 6
Группа: Проверенные
Ранг: Обитатель
Сообщений: 357
Репутация: 12 ±
Замечаний: 0% ±

Excel 2010
То что зеленным - это что хотели сделать? Если пред. вариант Вашего кода, то копируйте отсюда и все будет работать.

[vba]
Код
Sub Сол()
'
' Сол Макрос
'
If Range("C3") = 1 Then
         Columns("P:Q").Select
     Selection.EntireColumn.Hidden = True
     End If
     If Range("C3") <> 1 Then
     Columns("O:R").Select
     Selection.EntireColumn.Hidden = False
     Range("J22").Select
     End If
End Sub

'    ActiveWorkbook.Save
'    Range("C2").Select
'    ActiveCell.FormulaR1C1 = "1/2/2012"
'    Range("C3").Select
'    Application.Run "'проблема 2.xlsx'!Сол"
'    Range("J10").Select
'    ActiveWorkbook.Save
[/vba]
К сообщению приложен файл: 4858978.xls (35.5 Kb)


Место для рекламы.
 
Ответить
СообщениеТо что зеленным - это что хотели сделать? Если пред. вариант Вашего кода, то копируйте отсюда и все будет работать.

[vba]
Код
Sub Сол()
'
' Сол Макрос
'
If Range("C3") = 1 Then
         Columns("P:Q").Select
     Selection.EntireColumn.Hidden = True
     End If
     If Range("C3") <> 1 Then
     Columns("O:R").Select
     Selection.EntireColumn.Hidden = False
     Range("J22").Select
     End If
End Sub

'    ActiveWorkbook.Save
'    Range("C2").Select
'    ActiveCell.FormulaR1C1 = "1/2/2012"
'    Range("C3").Select
'    Application.Run "'проблема 2.xlsx'!Сол"
'    Range("J10").Select
'    ActiveWorkbook.Save
[/vba]

Автор - Stormy
Дата добавления - 21.02.2014 в 13:27
AmonRA2010 Дата: Пятница, 21.02.2014, 14:15 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
спасибо работает. Только есть вопрос, в файле в котором это нужно применять, есть 10 страниц в каждой из которых нужно это прописать. Как это прописать разово для всех страниц?
 
Ответить
Сообщениеспасибо работает. Только есть вопрос, в файле в котором это нужно применять, есть 10 страниц в каждой из которых нужно это прописать. Как это прописать разово для всех страниц?

Автор - AmonRA2010
Дата добавления - 21.02.2014 в 14:15
AmonRA2010 Дата: Пятница, 21.02.2014, 14:21 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Я могу прописать в
Код
Columns("O:R").Select

До этого поставить значение list потом использовать Columns?
К сообщению приложен файл: 2239609.xlsm (28.6 Kb)
 
Ответить
СообщениеЯ могу прописать в
Код
Columns("O:R").Select

До этого поставить значение list потом использовать Columns?

Автор - AmonRA2010
Дата добавления - 21.02.2014 в 14:21
Stormy Дата: Пятница, 21.02.2014, 15:36 | Сообщение № 9
Группа: Проверенные
Ранг: Обитатель
Сообщений: 357
Репутация: 12 ±
Замечаний: 0% ±

Excel 2010
Как вариант записать код макроса в модуль книги, правда там лучше на изменение ячейки цепляться. Ну или же проставить везде кнопки выполнения.
Хотя... Сейчас попробую с несколько листами.


Место для рекламы.
 
Ответить
СообщениеКак вариант записать код макроса в модуль книги, правда там лучше на изменение ячейки цепляться. Ну или же проставить везде кнопки выполнения.
Хотя... Сейчас попробую с несколько листами.

Автор - Stormy
Дата добавления - 21.02.2014 в 15:36
AmonRA2010 Дата: Пятница, 21.02.2014, 15:40 | Сообщение № 10
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Хотя... Сейчас попробую с несколько листами.

Тут не нужна кнопка, нужно чтобы это делалось автоматически...
 
Ответить
Сообщение
Хотя... Сейчас попробую с несколько листами.

Тут не нужна кнопка, нужно чтобы это делалось автоматически...

Автор - AmonRA2010
Дата добавления - 21.02.2014 в 15:40
Stormy Дата: Пятница, 21.02.2014, 15:56 | Сообщение № 11
Группа: Проверенные
Ранг: Обитатель
Сообщений: 357
Репутация: 12 ±
Замечаний: 0% ±

Excel 2010
AmonRA2010,
В модуль книги добавить нужно. Условия нужно будет написать для всех листов.
[vba]
Код
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Worksheets("Лист1").Range("C3") = 1 Then
          Worksheets("Лист1").Columns("P:Q").Select
      Selection.EntireColumn.Hidden = True
      End If
      If Worksheets("Лист1").Range("C3") <> 1 Then
      Worksheets("Лист1").Columns("O:R").Select
      Selection.EntireColumn.Hidden = False
      End If
      If Worksheets("Лист2").Range("C3") = 1 Then
          Worksheets("Лист2").Columns("P:Q").Select
      Selection.EntireColumn.Hidden = True
      End If
      If Worksheets("Лист2").Range("C3") <> 1 Then
     Worksheets("Лист2").Columns("O:R").Select
      Selection.EntireColumn.Hidden = False
          End If
End Sub
[/vba]


Место для рекламы.

Сообщение отредактировал Stormy - Пятница, 21.02.2014, 16:00
 
Ответить
СообщениеAmonRA2010,
В модуль книги добавить нужно. Условия нужно будет написать для всех листов.
[vba]
Код
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Worksheets("Лист1").Range("C3") = 1 Then
          Worksheets("Лист1").Columns("P:Q").Select
      Selection.EntireColumn.Hidden = True
      End If
      If Worksheets("Лист1").Range("C3") <> 1 Then
      Worksheets("Лист1").Columns("O:R").Select
      Selection.EntireColumn.Hidden = False
      End If
      If Worksheets("Лист2").Range("C3") = 1 Then
          Worksheets("Лист2").Columns("P:Q").Select
      Selection.EntireColumn.Hidden = True
      End If
      If Worksheets("Лист2").Range("C3") <> 1 Then
     Worksheets("Лист2").Columns("O:R").Select
      Selection.EntireColumn.Hidden = False
          End If
End Sub
[/vba]

Автор - Stormy
Дата добавления - 21.02.2014 в 15:56
AmonRA2010 Дата: Пятница, 21.02.2014, 16:01 | Сообщение № 12
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
В модуль книги добавить нужно

Извиняюсь за глупый вопрос, а это как и где?
 
Ответить
Сообщение
В модуль книги добавить нужно

Извиняюсь за глупый вопрос, а это как и где?

Автор - AmonRA2010
Дата добавления - 21.02.2014 в 16:01
AmonRA2010 Дата: Пятница, 21.02.2014, 16:07 | Сообщение № 13
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Извиняюсь это вы про макрос))
 
Ответить
СообщениеИзвиняюсь это вы про макрос))

Автор - AmonRA2010
Дата добавления - 21.02.2014 в 16:07
AmonRA2010 Дата: Пятница, 21.02.2014, 16:11 | Сообщение № 14
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
странно, записал модель. убалил макросы и не работает(
К сообщению приложен файл: 4121017.xlsm (25.1 Kb)
 
Ответить
Сообщениестранно, записал модель. убалил макросы и не работает(

Автор - AmonRA2010
Дата добавления - 21.02.2014 в 16:11
Stormy Дата: Пятница, 21.02.2014, 16:21 | Сообщение № 15
Группа: Проверенные
Ранг: Обитатель
Сообщений: 357
Репутация: 12 ±
Замечаний: 0% ±

Excel 2010
AmonRA2010,
Visual Basic редактор → Слева кликните на ЭтаКнига → вот туда и поместите код.


Место для рекламы.
 
Ответить
СообщениеAmonRA2010,
Visual Basic редактор → Слева кликните на ЭтаКнига → вот туда и поместите код.

Автор - Stormy
Дата добавления - 21.02.2014 в 16:21
Pelena Дата: Пятница, 21.02.2014, 16:25 | Сообщение № 16
Группа: Админы
Ранг: Местный житель
Сообщений: 19182
Репутация: 4420 ±
Замечаний: ±

Excel 365 & Mac Excel
AmonRA2010, почитайте Что такое макросы


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеAmonRA2010, почитайте Что такое макросы

Автор - Pelena
Дата добавления - 21.02.2014 в 16:25
AmonRA2010 Дата: Пятница, 21.02.2014, 16:55 | Сообщение № 17
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
AmonRA2010,
Visual Basic редактор → Слева кликните на ЭтаКнига → вот туда и поместите код.

Все сделал правильно, работает только 1 страница, 2 и 3 не работает.
Вроде код правильный...
К сообщению приложен файл: 5410948.xlsm (27.1 Kb)
 
Ответить
Сообщение
AmonRA2010,
Visual Basic редактор → Слева кликните на ЭтаКнига → вот туда и поместите код.

Все сделал правильно, работает только 1 страница, 2 и 3 не работает.
Вроде код правильный...

Автор - AmonRA2010
Дата добавления - 21.02.2014 в 16:55
Stormy Дата: Пятница, 21.02.2014, 17:06 | Сообщение № 18
Группа: Проверенные
Ранг: Обитатель
Сообщений: 357
Репутация: 12 ±
Замечаний: 0% ±

Excel 2010
Внимательнее с номерами Листов.



Место для рекламы.
 
Ответить
СообщениеВнимательнее с номерами Листов.


Автор - Stormy
Дата добавления - 21.02.2014 в 17:06
AmonRA2010 Дата: Пятница, 21.02.2014, 17:14 | Сообщение № 19
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Внимательнее с номерами Листов.

Вставил все верно, нолменяется только 1 лист. Не зависимо от изменения ячейки во 2 и 3 листе(
К сообщению приложен файл: 5630196.xlsm (29.5 Kb)
 
Ответить
Сообщение
Внимательнее с номерами Листов.

Вставил все верно, нолменяется только 1 лист. Не зависимо от изменения ячейки во 2 и 3 листе(

Автор - AmonRA2010
Дата добавления - 21.02.2014 в 17:14
Stormy Дата: Пятница, 21.02.2014, 17:29 | Сообщение № 20
Группа: Проверенные
Ранг: Обитатель
Сообщений: 357
Репутация: 12 ±
Замечаний: 0% ±

Excel 2010
AmonRA2010,
Дата на всех листах повторяется?


Место для рекламы.
 
Ответить
СообщениеAmonRA2010,
Дата на всех листах повторяется?

Автор - Stormy
Дата добавления - 21.02.2014 в 17:29
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как сделать автодобавление столбца(ов) (Макросы Sub)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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