Определение адреса выделенного диапазона ячеек на листе Excel с помощью кода VBA. Определение номера первой и последней строки. Программное выделение диапазона.
Адрес выделенного диапазона
Для определения адреса выделенного диапазона ячеек в VBA Excel используется свойство Address объекта Selection.
Объект Selection — это совокупность всех выделенных ячеек на листе Excel. Это может быть одна ячейка, смежный или несмежный диапазон ячеек, представляющий коллекцию смежных диапазонов. Если выделение состоит из несмежного диапазона, адреса смежных диапазонов, из которых он состоит, будут перечислены через запятую.
Смежный диапазон — прямоугольная область смежных (прилегающих друг к другу) ячеек.
Несмежный диапазон — совокупность (коллекция) смежных диапазонов (прямоугольных областей смежных ячеек).
Стоит отметить: несмотря на то, что в выделенном диапазоне может содержаться много ячеек, активной может быть только одна. Она представлена объектом ActiveCell. Для определения ее адреса в коде VBA Excel также используется свойство Address.
Sub Primer1() MsgBox «Адрес выделенного диапазона: « & Selection.Address & _ vbNewLine & «Адрес активной ячейки: « & ActiveCell.Address & _ vbNewLine & «Номер строки активной ячейки: « & ActiveCell.Row & _ vbNewLine & «Номер столбца активной ячейки: « & ActiveCell.Column End Sub |
Скопируйте и запустите код на выполнение. В результате получите что-то вроде этого, зависящее от того, какие диапазоны вы выберите:
Определение адресов выделенного диапазона и активной ячейки
Выделение ячеек и диапазонов
Выделить несмежный диапазон ячеек можно следующим образом:
Sub Primer2() Range(«B4:C7,E5:F7,D8»).Select End Sub |
Как видно из примера, в адресной строке объекта Range перечисляются адреса смежных диапазонов, составляющих общий несмежный диапазон, через запятую. Выделение осуществляется методом Select объекта Range.
Определение номеров первой и последней строки
Чтобы вычислить номера первой и последней строки выделенного диапазона, будем исходить из того, что первая ячейка смежного диапазона находится на первой строке, а последняя — на последней строке выделенного диапазона.
Sub Primer3() Dim i1 As Long, i2 As Long i1 = Selection.Cells(1).Row i2 = Selection.Cells(Selection.Cells.Count).Row MsgBox «Первая строка: « & i1 & _ vbNewLine & «Последняя строка: « & i2 End Sub |
Результат будет таким, зависит от выделенного диапазона:
Номера первой и последней строки выделенного смежного диапазона
Таким же образом можно вычислить номера первого и последнего столбцов выделенного диапазона, которые можно использовать для обработки информации по столбцам.
Обратите внимание, что для несмежных диапазонов этот пример не работает.
На практике я использовал определение номеров первой и последней строк по выделенному диапазону для формирования файла загрузки данных держателей дисконтных карт на сервис отправки СМС-сообщений. Оказалось, что базу данных клиентов заполнять в таблице Excel намного удобнее, чем на портале сервиса, а для загрузки в сервис достаточно сформировать несложный файл. Заполнил новые строки, выделил их по любому столбцу, нажал кнопку и файл готов.
Baguza Пользователь Сообщений: 15 |
#1 10.12.2019 00:20:13 Я сделал простенький Userform для прикрепленного примера макроса, подскажите код чтобы через combobox выбирать диапазон ячеек, которые прописаны в модуле данного макроса.
вот этот код чтобы можно было выбирать через combobox. Прикрепленные файлы
|
||
допустим вы выбрали в комбобоксе этот код (формально, это код, фактически это текст) и что с ним делать дальше??? Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
|
ocet p Пользователь Сообщений: 438 |
#3 10.12.2019 01:46:03
Поясните пожалуйста, это всегда должен быть диапазон «F10:F9999» или тоже какой-то другой внутри него ? |
||
Baguza, Изменено: Ігор Гончаренко — 10.12.2019 03:28:31 Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
|
Baguza Пользователь Сообщений: 15 |
#5 10.12.2019 11:25:50
Это условный диапазон. Для разных таблиц он будет разный. Я хотел бы, чтобы его (диапазон) можно было бы изменять через меню пользовательской формы, чтобы каждый раз не лезть в код макроса.
Код написали добрые форумчане. Я в макросах четвертый день. Поэтому пока особо не разбираюсь, что и как тут работает. Пытаюсь сделать удобную форму ввода данных для просчета макросом.
Смысл в том, чтобы выбранный диапазон изменял значение этого кода:
Не принципиально будет ли это combobox или inputbox цель заключается в том, чтобы этот ***box находился на «пользовательской форме» и выполнял функцию описанную выше. p.s. Если я в связи со своей неопытностью как то не так изъясняюсь, то уж простите)) могу только своими словами |
||||||||
ocet p Пользователь Сообщений: 438 |
#6 10.12.2019 14:34:07
1. Создайте «TextBox» (или «InputBox» как вам написал Ігор Гончаренко), чтобы ввести диапазон для листов, которые могут еще не существовать или для динамических диапазонов. Может быть, вот так это можно сделать ?
|
||||||
Baguza Пользователь Сообщений: 15 |
#7 10.12.2019 19:55:49 Прошу прощения, видимо я все таки, что то не так объяснил. Вот посмотрите пожалуйста на скриншот пользовательской формы и на вопросы по номерам
например выбираю в окне «С» F10 в окне «ПО» F214. И получаю в итоге в коде .UsedRange, .Range(«F10:F214»)) Номер 2 — В окне «выберите лист с локалкой» тот лист, на котором я этот диапазон выбираю (этот диапазон нужен только для этого листа и ни для какого больше). В файле-примере этот лист называется «локалка». Номер 3 — флажок, который будет запускать данную функцию на выбранном листе и на выбранном диапазоне. Номер 4 — ну тут все понятно. Кнопка запуска расчета по заданным параметрам. В случае если параметры не внесены расчет не запускается. Прикрепленные файлы
|
||
ocet p Пользователь Сообщений: 438 |
1. Что было бы источником данных для этих «ComboBox» ? |
Baguza Пользователь Сообщений: 15 |
#9 10.12.2019 22:54:30
У меня готовая таблица (как в примере) только без формул. Я запускаю макрос в своей уже готовой таблице, выбираю лист (к примеру «локалка») данные уже находятся на этом листе в ячейках «F10:F …» — ну до конца таблицы (всегда по разному) и макрос мне проставляет формулы для этой таблицы по выбранному мною диапазону. Или я что то не понимаю? Источник данных — цифры в ячейках F
Просто мне показалось так удобнее. Если это проблематично сделать, то мне не принципиально чтобы это был Combobox. Хотелось бы чтобы все было в одном месте (в одной польз. форме например) чтобы не путаться потом и не искать/вспоминать куда мне что вводить. |
||||
ocet p Пользователь Сообщений: 438 |
Не в этом дело, речь идёт о том, что чтобы помочь кому-то в чём-то, мы должны понять что он хочет сделать, без этого никакая робота. |
Baguza Пользователь Сообщений: 15 |
ocet p, расчеты этого кода
будут производиться только на одном листе. В моем случае-примере — это лист «локалка». Остальные листы никак не будут (не должны быть) задействованы в данном расчете. Но чтобы подстраховаться, что это может не всегда будет столбец «F» и не всегда он будет начинаться с «F10» я и решил добавить ‘ComboBox1’ («C»). Другими словами, Лист будет какой то один и столбец будет какой то один единственный. Мне нужно только выбрать какой это будет лист (локалка) и какой столбец (где у него начинается диапазон и где заканчивается) чтобы запустить этот код только там и нигде больше. |
||
Baguza, Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
|
ocet p Пользователь Сообщений: 438 |
#13 11.12.2019 20:37:39
Ещё никто не ответил ? UserForm:
Стандартный модуль:
|
||||||
Baguza Пользователь Сообщений: 15 |
ocet p, ошибку выдает(( «Subscript out of range» |
Ігор Гончаренко Пользователь Сообщений: 13746 |
#15 12.12.2019 01:37:38
а смысл? Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
||
ocet p Пользователь Сообщений: 438 |
#16 12.12.2019 01:48:20
Но где в какой строке кода ? …
А что с самообразованием автора темы на основе советов форума ? |
||||
Baguza Пользователь Сообщений: 15 |
#17 12.12.2019 01:59:19
Когда меняю диапазон то ошибку выдает «выберите данные из списков» когда запускаю с диапазоном F10:F9999 то выдает вот эту ошибку «Subscript out of range» |
||||
Baguza Пользователь Сообщений: 15 |
#18 12.12.2019 02:10:58 Ігор Гончаренко, Уважаемый, я по моему в своих сообщениях изначально обозначил, что я с макросами только начал работать и не имею опыта. И тема называется не «напишите для меня проект целиком, а то я сам ничего не хочу делать и не понимаю», а конкретно по определенной задаче. а что касательно:
это не решение задачи — это пример того, как еще больше меня запутать и переубедить меня в надобности создания той формы (пользовательской), с которой мне последующем будет удобно работать. |
||
ocet p Пользователь Сообщений: 438 |
Вы изменили латинские названия листов на кириллицу ? |
Ігор Гончаренко Пользователь Сообщений: 13746 |
#20 12.12.2019 02:36:57 #2 никаким боком не относится к вашей форме — ни сколько не отрицает и ни чуть не поощряет использование этой формы и любых других
если из названия вашей темы выкинуть «через userform/combobox» Изменено: Ігор Гончаренко — 12.12.2019 02:59:27 Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
||
Baguza Пользователь Сообщений: 15 |
#21 12.12.2019 03:02:12
Да, простите. Тут уже понял. Лист должен был называться «lokalka» чтобы функция заработала. Она и заработала. |
||
Ігор Гончаренко Пользователь Сообщений: 13746 |
#22 12.12.2019 03:06:52
в #2 показано как выбрать ЛЮБОЙ диапазон, присвоить переменной, и как потом выбранный диапазон использовать в дальнейших расчетах Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
||
ocet p Пользователь Сообщений: 438 |
#23 12.12.2019 04:11:14
Имя может быть любым, но как лист, так и содержимое константы «nazvLst» (Const nazvLst = «lokalka») должны совпадать (лист = «Локалка» => Const nazvLst = «Локалка», лист = «Пёс Барбос» => Const nazvLst = «Пёс Барбос», и т.д.)
Здесь вы должны объяснить, как надо сделать такой список. На каких критериях это должно основываться ? Вы можете увидеть здесь недостатки «ComboBox» для таких операций, нормальное текстовое поле было бы намного лучше чтобы вводить в неё диапазон. |
||||
Baguza Пользователь Сообщений: 15 |
#24 12.12.2019 04:26:32
Если бы можно было использовать или как то связать метод Игоря Гончаренко с моей пользовательской формой, то было бы замечательно. Нет никакой принципиальности, что именно использовать. Текстовое поле вполне подойдет. Можно его разместить на пользов.форме? |
||
Юрий М Модератор Сообщений: 60570 Контакты см. в профиле |
#25 12.12.2019 04:52:47 Baguza, можно было обойтись и без цитирования. Вот я пишу без цитаты — понятно, к кому я обращаюсь? |
Download Article
Download Article
This wikiHow teaches you how to start using Visual Basic procedures to select data in Microsoft Excel. As long as you’re familiar with basic VB scripting and using more advanced features of Excel, you’ll find the selection process pretty straight-forward.
-
1
Select one cell on the current worksheet. Let’s say you want to select cell E6 with Visual Basic. You can do this with either of the following options:[1]
ActiveSheet.Cells(6, 5).Select
ActiveSheet.Range("E6").Select
-
2
Select one cell on a different worksheet in the same workbook. Let’s say our example cell, E6, is on a sheet called Sheet2. You can use either of the following options to select it:
Application.Goto ActiveWorkbook.Sheets("Sheet2").Cells(6, 5)
Application.Goto (ActiveWorkbook.Sheets("Sheet2").Range("E6"))
Advertisement
-
3
Select one cell on a worksheet in a different workbook. Let’s say you want to select a cell from Sheet1 in a workbook called BOOK2.XLS. Either of these two options should do the trick:
Application.Goto Workbooks("BOOK2.XLS").Sheets("Sheet1").Cells(2,1)
Application.Goto Workbooks("BOOK2.XLS").Sheets("Sheet1").Range("A2")
-
4
Select a cell relative to another cell. You can use VB to select a cell based on its location relative to the active (or a different) cell. Just be sure the cell exists to avoid errors. Here’s how to use :
-
Select the cell three rows below and four columns to the left of the active cell:
ActiveCell.Offset(3, -4).Select
-
Select the cell five rows below and four columns to the right of cell C7:
ActiveSheet.Cells(7, 3).Offset(5, 4).Select
-
Select the cell three rows below and four columns to the left of the active cell:
Advertisement
-
1
Select a range of cells on the active worksheet. If you wanted to select cells C1:D6 on the current sheet, you can enter any of the following three examples:
ActiveSheet.Range(Cells(1, 3), Cells(6, 4)).Select
ActiveSheet.Range("C1:D6").Select
ActiveSheet.Range("C1", "D6").Select
-
2
Select a range from another worksheet in the same workbook. You could use either of these examples to select cells C3:E11 on a sheet called Sheet3:
Application.Goto ActiveWorkbook.Sheets("Sheet3").Range("C3:E11")
Application.Goto ActiveWorkbook.Sheets("Sheet3").Range("C3", "E11")
-
3
Select a range of cells from a worksheet in a different workbook. Both of these examples would select cells E12:F12 on Sheet1 of a workbook called BOOK2.XLS:
Application.Goto Workbooks("BOOK2.XLS").Sheets("Sheet1").Range("E12:F12")
Application.Goto Workbooks("BOOK2.XLS").Sheets("Sheet1").Range("E12", "F12")
-
4
Select a named range. If you’ve assigned a name to a range of cells, you’d use the same syntax as steps 4-6, but you’d replace the range address (e.g., «E12», «F12») with the range’s name (e.g., «Sales»). Here are some examples:
-
On the active sheet:
ActiveSheet.Range("Sales").Select
-
Different sheet of same workbook:
Application.Goto ActiveWorkbook.Sheets("Sheet3").Range("Sales")
-
Different workbook:
Application.Goto Workbooks("BOOK2.XLS").Sheets("Sheet1").Range("Sales")
-
On the active sheet:
-
5
Select a range relative to a named range. The syntax varies depending on the named range’s location and whether you want to adjust the size of the new range.
- If the range you want to select is the same size as one called Test5 but is shifted four rows down and three columns to the right, you’d use:
ActiveSheet.Range("Test5").Offset(4, 3).Select
- If the range is on Sheet3 of the same workbook, activate that worksheet first, and then select the range like this:
Sheets("Sheet3").Activate ActiveSheet.Range("Test").Offset(4, 3).Select
- If the range you want to select is the same size as one called Test5 but is shifted four rows down and three columns to the right, you’d use:
-
6
Select a range and resize the selection. You can increase the size of a selected range if you need to. If you wanted to select a range called Database’ and then increase its size by 5 rows, you’d use this syntax:
Range("Database").Select Selection.Resize(Selection.Rows.Count + 5, _Selection.Columns.Count).Select
-
7
Select the union of two named ranges. If you have two overlapping named ranges, you can use VB to select the cells in that overlapping area (called the «union»). The limitation is that you can only do this on the active sheet. Let’s say you want to select the union of a range called Great and one called Terrible:
-
Application.Union(Range("Great"), Range("Terrible")).Select
- If you want to select the intersection of two named ranges instead of the overlapping area, just replace Application.Union with Application.Intersect.
-
Advertisement
-
1
Use this example data for the examples in this method. This chart full of example data, courtesy of Microsoft, will help you visualize how the examples behave:[2]
A1: Name B1: Sales C1: Quantity A2: a B2: $10 C2: 5 A3: b B3: C3: 10 A4: c B4: $10 C4: 5 A5: B5: C5: A6: Total B6: $20 C6: 20 -
2
Select the last cell at the bottom of a contiguous column. The following example will select cell A4:
ActiveSheet.Range("A1").End(xlDown).Select
-
3
Select the first blank cell below a column of contiguous cells. The following example will select A5 based on the chart above:
ActiveSheet.Range("A1").End(xlDown).Offset(1,0).Select
-
4
Select a range of continuous cells in a column. Both of the following examples will select the range A1:A4:
ActiveSheet.Range("A1", ActiveSheet.Range("a1").End(xlDown)).Select
ActiveSheet.Range("A1:" & ActiveSheet.Range("A1"). End(xlDown).Address).Select
-
5
Select a whole range of non-contiguous cells in a column. Using the data table at the top of this method, both of the following examples will select A1:A6:
ActiveSheet.Range("A1",ActiveSheet.Range("A65536").End(xlUp)).Select
ActiveSheet.Range("A1",ActiveSheet.Range("A65536").End(xlUp)).Select
Advertisement
Ask a Question
200 characters left
Include your email address to get a message when this question is answered.
Submit
Advertisement
Video
-
The «ActiveSheet» and «ActiveWorkbook» properties can usually be omitted if the active sheet and/or workbook(s) are implied.
Thanks for submitting a tip for review!
Advertisement
About This Article
Article SummaryX
1. Use ActiveSheet.Range(«E6»).Select to select E6 on the active sheet.
2. Use Application.Goto (ActiveWorkbook.Sheets(«Sheet2»).Range(«E6»)) to select E6 on Sheet2.
3. Add Workbooks(«BOOK2.XLS») to the last step to specify that the sheet is in BOOK2.XLS.
Did this summary help you?
Thanks to all authors for creating a page that has been read 167,714 times.
Is this article up to date?
Как выбрать и изменить форматирование диапазона
На чтение 3 мин. Просмотров 2.8k.
Что делает макрос: Этот простой макрос выбирает диапазон D5: D16 и форматирует его.
Содержание
- Как макрос работает
- Код макроса
- Как этот код работает
- Код макроса
- Как этот код работает
- Код макроса
- Как использовать
Как макрос работает
В этом макросе определяется диапазон для выбора с помощью объекта Range.
Код макроса
Sub VibratDiapazon() 'Выбор диапазона Range("D5:D16").Select End Sub
После того, как выбран диапазон ячеек, вы можете использовать любые свойства Range, манипулируя ячейками. Мы изменили этот макрос, чтобы диапазон желтого цвета преобразовался в формат числа и стал выделенным жирным шрифтом.
Sub IzmenitFormat() 'Выбор диапазона Range("D5:D16").Select 'Преобразование в формат числа Selection.NumberFormat = "#,##0" 'Жирный шрифт Selection.Font.Bold = True 'Заливка желтым цветом Selection.Interior.ColorIndex = 36 End Sub
Вам не нужно запоминать все свойства объекта ячейки для того, чтобы манипулировать ими. Вы можете просто записать макрос, выполните форматирование, а затем посмотреть на код, который написал Excel. После того, как вы увидели, что синтаксис правильный, вы можете применить его по мере необходимости. Многие программисты Excel начинают обучение VBA с этого.
Вы заметили, что мы называем Selection много раз в предыдущем примере кода. Для того, чтобы написать более эффективный код, вы можете просто сослаться на диапазон, используя With … End With. Этот оператор говорит Excel, что любое действие, которое вы выполняете относится к объекту, который вы указали.
Обратите внимание, что этот макрос фактически не выбирает диапазон в первую очередь. Это ключевой момент. В макросе, мы можем работать с диапазоном, не выбирая его в первую очередь.
Sub IzmenitFormatWith() With Range("D5:D16") .NumberFormat = "#,##0" .Font.Bold = True .Interior.ColorIndex = 36 End With End Sub
Как этот код работает
Еще один способ, вы можете выбрать диапазон с помощью элемента ячейки объекта Range.
Адрес ячеек — это удобный способ выбора диапазонов через код. Он требует только позиции строк и столбцов в качестве параметров. Ячейка (5, 4) относится к строке 5, столбцу 4 (или ячейка D5).
Ячейки (16, 4) относится к строке 16, столбцу 4 (или ячейки D16). Если вы хотите выбрать диапазон ячеек, просто укажите два пункта в объект Range. Этот макрос выполняет один и тот же выбор диапазона D5:D16:
Код макроса
Sub IzmenitFormatRange() Range(Cells(5, 4), Cells(16, 4)).Select End Sub
Как этот код работает
Вот полный код форматирования с помощью позиций ячеек. Опять же, обратите внимание, что этот макрос фактически не меняет диапазон. Мы можем работать с диапазоном, не выделяя его.
Код макроса
Sub IzmenitFormat3() With Range(Cells(5, 4), Cells(16, 4)) .NumberFormat = "#,##0" .Font.Bold = True .Interior.ColorIndex = 36 End With End Sub
Как использовать
Для реализации такого рода макроса, вы можете скопировать и вставить его в стандартный модуль:
- Активируйте редактор Visual Basic, нажав ALT + F11 на клавиатуре.
- Щелкните правой кнопкой мыши имя проекта / рабочей книги в окне проекта.
- Выберите Insert➜Module.
- Введите или вставьте код в окно кода.
- Что делает макрос для выбора диапазона
- Код макроса для выбора диапазона
- Как работает макрос
- Что делает макрос для изменения форматирования диапазона
- Код макроса для изменения форматирования диапазона
- Как работает макрос
- Что делает макрос для изменения форматирования диапазона без выделения диапазона
- Код макроса для изменения форматирования диапазона без выделения диапазона
- Что делает макрос для изменения форматирования диапазона через позиции ячеек
- Код макроса для изменения форматирования диапазона через позиции ячеек
- Как использовать
- Скачать файл
Ссылка на это место страницы:
#zadacha1
В этом макросе выбирается диапазон с помощью объекта Range.
Ссылка на это место страницы:
#formula1
Sub
VibratDiapazon()
Range(
"D5:D16"
).
Select
End
Sub
Ссылка на это место страницы:
#kak1
После того, как выбран диапазон ячеек, вы можете использовать любые свойства Range, манипулируя ячейками. В макросе мы добавили команды для преобразования диапазона в формат числа, изменения цвета фона на желтый и изменения шрифта на жирный.
Ссылка на это место страницы:
#zadacha2
После того, как выбран диапазон ячеек, вы можете использовать любые свойства Range, манипулируя ячейками. В макросе мы добавили команды для преобразования диапазона в формат числа, изменения цвета фона на желтый и изменения шрифта на жирный.
Ссылка на это место страницы:
#formula2
Sub
IzmenitFormat()
Range(
"D5:D16"
).
Select
Selection.NumberFormat =
"#,##0"
Selection.Font.Bold =
True
Selection.Interior.ColorIndex = 36
End
Sub
Ссылка на это место страницы:
#kak2
Вам не нужно запоминать все свойства объекта ячейки для того, чтобы манипулировать ими. Вы можете просто записать макрос, выполнив форматирование, а затем посмотреть на код, который написал Excel. После того, как вы увидели, что синтаксис правильный, вы можете применить его по мере необходимости. Многие программисты Excel начинают обучение VBA с этого.
Мы используем метод Selection много раз в примере кода. Для того, чтобы написать более эффективный код, вы можете просто сослаться на диапазон, используя With … End With. Этот оператор говорит Excel, что любое действие, которое вы выполняете относится к объекту, который вы ранее указали.
Ссылка на это место страницы:
#zadacha3
Обратите внимание, что этот макрос фактически не выбирает диапазон, он ссылается на него, но при этом он не выделяется физически. Это ключевой момент. В макросе, мы можем работать с диапазоном, не выделяя его.
Ссылка на это место страницы:
#formula3
Sub
IzmenitFormatWith()
With
Range(
"D5:D16"
)
.NumberFormat =
"#,##0"
.Font.Bold =
True
.Interior.ColorIndex = 36
End
With
End
Sub
Ссылка на это место страницы:
#zadacha4
Еще один способ, как можно выбрать диапазон с помощью элемента ячейки объекта Range.
Адрес ячеек — это удобный способ выбора диапазонов через код. Он требует только позиции строк и столбцов в качестве параметров. Ячейка (5, 4) относится к строке 5, столбцу 4 (или ячейка D5).
Ячейки (16, 4) относится к строке 16, столбцу 4 (или ячейки D16). Если вы хотите выбрать диапазон ячеек, просто укажите два пункта в объект Range.
Вот полный код форматирования с помощью позиций ячеек. Опять же, обратите внимание, что этот макрос фактически не выделяет диапазон. Мы можем работать с диапазоном, не выделяя его.
Ссылка на это место страницы:
#formula4
Sub
IzmenitFormatWith()
With
Range(
"D5:D16"
)
.NumberFormat =
"#,##0"
.Font.Bold =
True
.Interior.ColorIndex = 36
End
With
End
Sub
Ссылка на это место страницы:
#touse
1. Активируйте редактор Visual Basic, нажав ALT + F11.
2. Щелкните правой кнопкой мыши имя проекта / рабочей книги в окне проекта.
3. Выберите Insert➜Module.
4. Введите или вставьте код во вновь созданном модуле
Ссылка на это место страницы:
#file
Файлы статей доступны только зарегистрированным пользователям.
1. Введите свою почту
2. Нажмите Зарегистрироваться
3. Обновите страницу
Вместо этого блока появится ссылка для скачивания материалов.
Привет! Меня зовут Дмитрий. С 2014 года Microsoft Cretified Trainer. Вместе с командой управляем этим сайтом. Наша цель — помочь вам эффективнее работать в Excel.
Изучайте наши статьи с примерами формул, сводных таблиц, условного форматирования, диаграмм и макросов. Записывайтесь на наши курсы или заказывайте обучение в корпоративном формате.
Подписывайтесь на нас в соц.сетях: