есть 12 листов, а бывает и больше, в которых вписывается одно и то же название изделия. но не для всех изделий требуются все 12 листов, а например лист 3,4,5,7,9,11
при "нормальном" заполнении - заполняется ячейка на листе 1, а на листах 2-12 данные копируются можно ли как то увязать одноименные ячейки между собой, чтоб заполнив ячейку на любом из листов - данные автоматически перенеслись на остальные листы. Например записав данные на листе 5 - получить копирование на листы 1-4, 6-12 ?
есть 12 листов, а бывает и больше, в которых вписывается одно и то же название изделия. но не для всех изделий требуются все 12 листов, а например лист 3,4,5,7,9,11
при "нормальном" заполнении - заполняется ячейка на листе 1, а на листах 2-12 данные копируются можно ли как то увязать одноименные ячейки между собой, чтоб заполнив ячейку на любом из листов - данные автоматически перенеслись на остальные листы. Например записав данные на листе 5 - получить копирование на листы 1-4, 6-12 ?gagarin-ace
но не для всех изделий требуются все 12 листов, а например лист 3,4,5,7,9,11
Это можно сделать даже вручную, сгруппировав нужные листы. Т.е. встаете на ячейку для ввода на листе 1, затем, удерживая клавишу Ctrl, щелкаете по ярлыкам листов 3,4,5,7,9,11 и, наконец, вводите значение в выбранную ячейку на листе 1. Итог - на листах 3,4,5,7,9,11 в той же самой ячейке, что и на листе 1, находится то же самое значение, введенное на листе 1.
P.S. Интересно, что кодом как надо срабатывает только примерно такой вариант, предложенный макрорекордером: [vba]
Код
Sheets(Array("Лист1", "Лист3", "Лист4", "Лист5", "Лист7", "Лист9", "Лист11")).Select Range("A1").Select 'ячейка A1 на первом элементе массива выше, т.е. на листе 1 ActiveCell.Value = "Одно и то же значение у всех"
[/vba]
Попытки с благими намерениями типа избавиться от Select - увы, терпят неудачу: что в таком виде (ячейка заполняется только на одном первом листе): [vba]
Код
Sheets(Array("Лист1", "Лист3", "Лист4", "Лист5", "Лист7", "Лист9", "Лист11")).Select Range("A1").Value = "Одно и то же значение у всех"
[/vba]что в таком (в этом случае просто ошибка выполнения): [vba]
Код
Sheets(Array("Лист1", "Лист3", "Лист4", "Лист5", "Лист7", "Лист9", "Лист11")).Range("A1").Value = "Одно и то же значение у всех"
но не для всех изделий требуются все 12 листов, а например лист 3,4,5,7,9,11
Это можно сделать даже вручную, сгруппировав нужные листы. Т.е. встаете на ячейку для ввода на листе 1, затем, удерживая клавишу Ctrl, щелкаете по ярлыкам листов 3,4,5,7,9,11 и, наконец, вводите значение в выбранную ячейку на листе 1. Итог - на листах 3,4,5,7,9,11 в той же самой ячейке, что и на листе 1, находится то же самое значение, введенное на листе 1.
P.S. Интересно, что кодом как надо срабатывает только примерно такой вариант, предложенный макрорекордером: [vba]
Код
Sheets(Array("Лист1", "Лист3", "Лист4", "Лист5", "Лист7", "Лист9", "Лист11")).Select Range("A1").Select 'ячейка A1 на первом элементе массива выше, т.е. на листе 1 ActiveCell.Value = "Одно и то же значение у всех"
[/vba]
Попытки с благими намерениями типа избавиться от Select - увы, терпят неудачу: что в таком виде (ячейка заполняется только на одном первом листе): [vba]
Код
Sheets(Array("Лист1", "Лист3", "Лист4", "Лист5", "Лист7", "Лист9", "Лист11")).Select Range("A1").Value = "Одно и то же значение у всех"
[/vba]что в таком (в этом случае просто ошибка выполнения): [vba]
Код
Sheets(Array("Лист1", "Лист3", "Лист4", "Лист5", "Лист7", "Лист9", "Лист11")).Range("A1").Value = "Одно и то же значение у всех"