Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Работа с ячейками, диапазонами и листами




До сих пор рассматривались изменения данных в активной ячейке и на текущем рабочем листе. Иногда требуется вводить данные на другой лист. Предположим, например, что после выполнения расчёта стоимости необходимо заполнить накладную. Создайте процедуру, копирующую значения ячеек одного листа в ячейки другого листа.

44. Создайте новый лист.

45. Выполните макрос Расчет_стоимости, введя допустимую величину скидки 30%.Введите значение розничной цены.

46. Чтобы создать новую процедуру, нажмите кнопку Макросы в группе Код на вкладке Разработчик. В появившемся диалоговом окне в поле Имя макроса введите название создаваемой процедурыСоздать_Накладную и нажмите кнопкуСоздать.

47. В открывшемся окне редактора введите следующий текст процедуры:

SubСоздать_Накладную ()

'Дадим активному листу имя Расчет

ActiveSheet.Name = "Расчет"

'Добавим рабочий лист после текущего

Worksheets.AddAfter:=ActiveSheet

'Дадим только что добавленному листу имя Накладная

ActiveSheet.Name = "Накладная"

'Введем в ячейку C1 значение "Накладная"

Range("C1").Value = "Накладная"

'Установим в ячейке C1 шрифт полужирный, 18, курсив

Range("C1").Font.Bold = True

Range("C1").Font.Size = 18

Range("C1").Font.Italic = True

'Введемданныевячейки A3, A4 и A5

Range("A3").Value = "Склад № 5"

Range("A4").Value = "ул. Энергетическая, 1"

Range("A5").Value = "Москва, Российская Федерация"

'Введем данные в ячейки B7, B8 и B9

Range("B7").Value = "Розничная цена:"

Range("B8").Value = "Оптовая скидка:"

Range("B9").Value = "Оптовая цена:"

'Установим ширину столбцов B и C

Columns("B:C").ColumnWidth = 20

'Установим в ячейках B7:B9 курсив и выравнивание по правому краю

Range("B7:B9").Font.Italic = True

Range("B7:B9").HorizontalAlignment = xlRight

'Установимвячейках B7:C9 размершрифта 14

Range("B7:C9").Font.Size = 14

' Скопируем данные из ячеек листа Расчет в ячейки текущего листа

Range("C7").Value = Worksheets("Расчет").Range("C5").Value

Range("C8").Value = Worksheets("Расчет").Range("C7").Value

Range("C9").Value = Worksheets("Расчет").Range("C9").Value

'Установим в ячейках C7:C9 нужный формат

Range("C7").NumberFormat = _

"_-* #,##0.00[$р.-419]_-;-* #,##0.00[$р.-419]_-;_-* ""-""??[$ р.-419]_-;_-@_-"

Range("C8").Style = "Percent"

Range("C8").NumberFormat = "0.00%"

Range("C9").NumberFormat = _

"_-* #,##0.00[$р.-419]_-;-* #,##0.00[$р.-419]_-;_-* ""-""??[$ р.-419]_-;_-@_-"

Range("B11").Value = "*** Спасибо за покупку! ***"

Range("B11").Font.Italic = True

EndSub

48. МакросСоздать_Накладнуюсоздаёт новый рабочий лист (см. рис. 5) с именем Накладная и выполняет копирование на него данных с рабочего листа с именем Расчёт. Назначение отдельных инструкций процедуры поясняет комментарий.

 

Рис. 5. Рабочий лист, созданный макросомСоздать_Накладную

 

49. Покажите результаты работы преподавателю.

50. Закройте приложениеMicrosoft Excel.

Вопросы для контроля

1. Есть ли что-либо общее между макросом MicrosoftExcel и процедурой VisualBasic?

2. Как записать процедуру с помощью макрорекордера?

3. Как можно увидеть текст записанного макроса?

4. Как выполнить записанный макрос, используя команды ленты?

5. На что влияет значение свойства DisplayGridlines объекта ActiveWindow?

6. Зачем нужен объект Range?

7. Что делает метод Select при применении к объекту Range?

8. Что означает ссылка ActiveCell?

9. Каково назначение свойства FormulaR1C1объекта Range?

10. Каково назначение метода Columns?

11. На что влияет значение свойства ColumnWidth?

12. Каково назначение стандартных функций Val и Str? Какие аргументы у этих функций?

13. Чем является объект ActiveSheet?

14. Чем является объект Worksheets?

15. Что произойдет в результате применения метода Add к объекту Worksheets?










Последнее изменение этой страницы: 2018-04-12; просмотров: 166.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...