О великие и всемогущие опять без вашей помощи ни как Ни как не могу вписать большое количество диапазонов, т.к. скорее всего число символов превышает 255 знаков. как мне поступить? [vba]
Код
If Target.Cells.Count > 1 Then Exit Sub If Not Intersect(Target, Range("g3:g44,g46:g79,g81:g97,g99:g107,g109:g175,g177:g257,g259:g280,g282:g368,g370:g399,g401:g704,g706:g875,g877:g911,g913:g1017,g1019:g1159,g1161:g1191,g1193:g1227,g1229:g1286,g1288:g1317,g1319:g1329,g1331:g1338,g1340:g1382,g1384:g1436,g1438:g1470,g1472:g1508")) Is Nothing Then 'g1510:g1595,g1597:g1673,g1675:g1715,g1717:g1763 Target.Interior.ColorIndex = 46 End If
[/vba] не влезает буквально чуть чуть (все что за апострофом). Как мне поступить? Использование переноса строки тоже не срабатывает [vba]
Код
...,g1472:g1508", _ "g1510:g1595,..."))
[/vba] В именованный диапазон так же не влезает такое количество аргументов. Может возможно было бы указать диапазон "g3:g1763", а затем указать исключения из него "g45,g80,...,g1716". Возможно ли данные диапазоны описать один раз, а затем использовать их в трех макросах? Заранее спасибо за отклик.
О великие и всемогущие опять без вашей помощи ни как Ни как не могу вписать большое количество диапазонов, т.к. скорее всего число символов превышает 255 знаков. как мне поступить? [vba]
Код
If Target.Cells.Count > 1 Then Exit Sub If Not Intersect(Target, Range("g3:g44,g46:g79,g81:g97,g99:g107,g109:g175,g177:g257,g259:g280,g282:g368,g370:g399,g401:g704,g706:g875,g877:g911,g913:g1017,g1019:g1159,g1161:g1191,g1193:g1227,g1229:g1286,g1288:g1317,g1319:g1329,g1331:g1338,g1340:g1382,g1384:g1436,g1438:g1470,g1472:g1508")) Is Nothing Then 'g1510:g1595,g1597:g1673,g1675:g1715,g1717:g1763 Target.Interior.ColorIndex = 46 End If
[/vba] не влезает буквально чуть чуть (все что за апострофом). Как мне поступить? Использование переноса строки тоже не срабатывает [vba]
Код
...,g1472:g1508", _ "g1510:g1595,..."))
[/vba] В именованный диапазон так же не влезает такое количество аргументов. Может возможно было бы указать диапазон "g3:g1763", а затем указать исключения из него "g45,g80,...,g1716". Возможно ли данные диапазоны описать один раз, а затем использовать их в трех макросах? Заранее спасибо за отклик.Sancho
Сообщение отредактировал Sancho - Понедельник, 30.05.2016, 17:24
Sancho, Да, как Вы и неделали, просто это позволит Вам в каждый описываемый диапазон запихнуть то, что Вы запихивали в 1 (до 255 символов). [vba]
Код
Set rng = Union(Range("g3:g44,g46:g79,g81:g97,g99:g107,g109:g175,g177:g257,g259:g280,g282:g368,g370:g399,g401:g704,g706:g875,g877:g911,g913:g1017,g1019:g1159,g1161:g1191,g1193:g1227,g1229:g1286,g1288:g1317,g1319:g1329,g1331:g1338,g1340:g1382,g1384:g1436,g1438:g1470,g1472:g1508"), Range("g1510:g1595,g1597:g1673,g1675:g1715,g1717:g1763"))
[/vba] Ф-я Union объединяет диапазоны.
Sancho, Да, как Вы и неделали, просто это позволит Вам в каждый описываемый диапазон запихнуть то, что Вы запихивали в 1 (до 255 символов). [vba]
Код
Set rng = Union(Range("g3:g44,g46:g79,g81:g97,g99:g107,g109:g175,g177:g257,g259:g280,g282:g368,g370:g399,g401:g704,g706:g875,g877:g911,g913:g1017,g1019:g1159,g1161:g1191,g1193:g1227,g1229:g1286,g1288:g1317,g1319:g1329,g1331:g1338,g1340:g1382,g1384:g1436,g1438:g1470,g1472:g1508"), Range("g1510:g1595,g1597:g1673,g1675:g1715,g1717:g1763"))