Форум программистов, компьютерный форум, киберфорум
Наши страницы
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
gotoisbad
0 / 0 / 0
Регистрация: 22.09.2019
Сообщений: 4
1

Скопировать на новый лист наименования товаров с использованием макроса

09.10.2019, 20:01. Просмотров 832. Ответов 1

Доброго времени суток! Макрос, приведённый ниже, переносит на новый лист разницу между значениями товаров "Минимальный объём" и "На складе". Требуется подправить макрос так, чтобы на новый лист также попадали наименования товаров, прикреплённые к соответствующим значениям. Наименования должны выводиться в столбец А. Вывод должен осуществляться в отсортированном виде (наибольшие значения и названия товаров должны быть наверху листа).
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Sub ResultBC()
Dim a()
Dim dRes As Long
Dim i As Long, k As Long
    a = Range("B2:C6").Value
 
    For i = 1 To UBound(a)
        dRes = a(i, 2) - a(i, 1)
 
        If dRes > 0 Then
            k = k + 1: a(k, 1) = dRes
        End If
    Next i
 
    Worksheets("Result").Range("B2").Resize(k, 1).Value = a
End Sub
0
Вложения
Тип файла: xlsx Лист Microsoft Excel.xlsx (8.8 Кб, 3 просмотров)
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.10.2019, 20:01
Ответы с готовыми решениями:

Скопировать макросы в новый лист
Добрый вечер коллеги Существует ли такой способ, чтобы можно было в новый рабочий лист...

Создание макроса по поиску значения в строке и копирования строки на новый лист
Добрый день уважаемые эксперты! Прошу вашей помощи в деле написания макроса. Так как в языках...

Нужно скопировать результатные данные на новый лист
Здравствуйте,помогите создать код,который будет создавать новый лист в книге и копировать...

Скопировать строку на новый лист, если ячейка содержит определенное значение
Добрый день, нужен макрос, или как по другому решить: Нужно скопировать строку на другой лист,...

Скопировать данные сотрудников, рожденных с января 1990 г. по февраль 2000 г. на новый лист
Дана база данных excel со списком сотрудников, как выполнить на vba выбор по критерию. Например...

1
ArtNord
202 / 147 / 60
Регистрация: 18.11.2015
Сообщений: 690
10.10.2019, 08:55 2
Лучший ответ Сообщение было отмечено gotoisbad как решение

Решение

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Sub ResultBC()
Dim a()
Dim dRes As Long
Dim i As Long, k As Long
    a = Range("A2:C6").Value
 
    For i = 1 To UBound(a)
        dRes = a(i, 3) - a(i, 2)
 
        If dRes > 0 Then
            k = k + 1
            a(k, 2) = dRes
            a(k, 1) = a(i, 1)
        End If
    Next i
   Worksheets("Result").Range("A1") = "Наименование"
   Worksheets("Result").Range("B1") = "Разница"
   Worksheets("Result").Range("A2").Resize(k, 2).Value = a
 
    With Worksheets("Result").Sort
        .SetRange Range("A2:B" & k+1)
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    
End Sub
1
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.10.2019, 08:55

Скопировать строку на новый лист, если ячейка содержит определенное СЛОВО в тексте - VBA
Имеется код который копирует строки с определенным значением ячейки. Sub perenos() Dim i&...

Как создать новый лист и импортировать данные с другого листа на новый лист
как создать новый лист и импортировать данные с другого листа на новый лист. Private Sub...

Как скопировать лист в новый файл и обозвать его (файл) именем, включающим текущую дату?
Господа, как скопировать лист в новый файл и обозвать его (файл) именем, включающим текущую дату. В...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.