Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 02.02.2016
Сообщений: 1
1

Создать макрос для рабочей книги MS Excel, позволяющий формировать значения в диапазонах ячеек

02.02.2016, 01:51. Показов 2383. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста, я начинающий пр. мне очень трудно решать
1. Создать макрос для рабочей книги MS Excel, позволяющий формировать
значения в диапазонах ячеек в соответствии с предложенными ниже вариантами
2. Макрос должен:
2.1. запускаться с панели инструментов MS Excel
2.2. иметь форму, в которой пользователь может указать размер матрицы и
левый верхний угол (или полностью диапазон) расположения матрицы на
листе MS Excel
3. При запуске макроса все данные с листа должны удаляться

1 1 1 1 1 1
0 1 1 1 1 0
0 0 1 1 0 0
0 1 1 1 1 0
1 1 1 1 1 1
Миниатюры
Создать макрос для рабочей книги MS Excel, позволяющий формировать значения в диапазонах ячеек  
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.02.2016, 01:51
Ответы с готовыми решениями:

Написать макрос, позволяющий заполнить один столбец рабочей книги числами по порядку
Задание: Написать макрос, позволяющий заполнить один столбец рабочей книги числами по-порядку,...

Макрос для разбиения листа рабочей книги на отдельные листы
Добрый день! Подскажите, возникла проблема с написанием макроса для разбиения листа, состоящего...

Как отключить сохранение рабочей книги для автовосстановления в Excel 2002?
Как отключить сохранение рабочей книги для автовосстановления в Excel 2002. Уж больно оно мешает.

Как задать диапазон имен для рабочей книги в VBA Excel?
Добрый день. Нужна помощь с несколькими вопросами по vba excel: 1. Для создания сводной таблицы я...

3
5562 / 1368 / 150
Регистрация: 08.02.2009
Сообщений: 4,109
Записей в блоге: 30
02.02.2016, 22:22 2
Цитата Сообщение от zargar Посмотреть сообщение
я начинающий пр.
Так начинайте уже! А то не к чему и помощь приложить.

Похожие в принципе (а не по названию) темы:
Сделал, на базе демо для AHDREY33. Замечательно*, что по сути пришлось изменить лишь один оператор — присваивания. Но пока вы под гнётом Минобра, вам это вряд ли подойдёт (сам код).
Цитата Сообщение от zargar Посмотреть сообщение
мне очень трудно решать
А я после работы, видимо, трудоголик: было тоже нелегко, но зато каков серотонин!
____________________
* ибо это же массовый алгоритм — мечта бригадиров, командиров и их жён!
Миниатюры
Создать макрос для рабочей книги MS Excel, позволяющий формировать значения в диапазонах ячеек   Создать макрос для рабочей книги MS Excel, позволяющий формировать значения в диапазонах ячеек  
0
6172 / 937 / 310
Регистрация: 25.02.2011
Сообщений: 1,367
Записей в блоге: 1
02.02.2016, 23:02 3
Лучший ответ Сообщение было отмечено Sasha_Smirnov как решение

Решение

как вариант (для квадратной матрицы):
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Sub main()
    Dim i&, j&, n&, m&, rng As Range
    Cells.ClearContents 'очищаем ячейки
    n = Val(InputBox("Размер матрицы", , 6))
    If n < 1 Then Exit Sub 'если задан не правильный параметр, то выходим из процедуры
    Set rng = ActiveCell 'вывод будет произведен в текущию ячейку
    'диапазон вывода можно задать через диалоговое окно Application.InputBox()
    'On Error Resume Next
    'Set rng = Application.InputBox("Укажите диапазон для вывода", , , Type:=8) 'ячейка для вывода
    'If rng Is Nothing Then Exit Sub 'нажата кнопка Отмена - диапазон не выбран
    'On Error GoTo 0
    ReDim arr&(1 To n, 1 To n)
    For i = 1 To n
        If i <= n / 2 Then m = i Else m = n - i + 1
        For j = m To n - m + 1
            arr(i, j) = 1
    Next j, i
    rng.Resize(n, n) = arr
End Sub
запуск с панели инструментов MS Excel попробуйте реализовать сами
0
5562 / 1368 / 150
Регистрация: 08.02.2009
Сообщений: 4,109
Записей в блоге: 30
09.02.2016, 05:44 4
Excel 2007 и моложе заполнит диапазон автоматом (по идее Апострофф’а), а Excel 2003 — после нажатия кнопки (как выше на рисунках).

Цитата Сообщение от Sasha_Smirnov Посмотреть сообщение
offset и resize
из темы AHDREY33 оставил как бонус; для подсветки применил условное форматирование (это быстрее и гибче):
Вложения
Тип файла: xls Апертура.xls (63.0 Кб, 5 просмотров)
0
09.02.2016, 05:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.02.2016, 05:44
Помогаю со студенческими работами здесь

Объединение ячеек при вставке в разных диапазонах
Здравствуйте! Нужна помощь при создании макроса... Дано 3 столбца, как объединить ячейки с...

Макрос для сравнения данных ячеек одной книги с другой
Здравствуйте! Пожалуйста, не ругайтесь, я новенький. У меня стоит задача автоматизации отчета по...

Макрос на все листы рабочей книги
Как сделать чтобы макрос виполнялся на всех листах рабочей книги одновременно?

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru