powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / нужен код
9 сообщений из 9, страница 1 из 1
нужен код
    #36638486
breddred
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый всем день!
Какой макрос следует прописать(и как), чтобы выполнить следующую задачу.

Эксель -файл данных из 5 столбцов A B C D E

Самые важные столбцы A , D( номер ID -код) и E(сумма в рублях и долларах)

В столбце D существует два вида кода: те, что начинаются с "RUB"( например RUB0000) и те, что начинаются с "USD" (Пример USD100).

В столбце A находится личный код компании( не ID!) и он в столбце часто удваивается, иногда утраивается, иначе говоря может повторяться.

ЧТО НУЖНО:
Нужно, чтобы макрос делал следующее:
1) сортировал D только по RUB, а DOL удалял(DOL они вообще не нужны, не используются и мозолят глаза)
2) Все что дублируется в A оставлять только в одной строке и показывать в E сразу сумму в рубл по дублируемым строкам.

Обычно приходится это делать вручную.
Я бы с удовольствием прислал файл, его набросок, но нет доступа на работе и возможности выложить.
Надеюсь понятно объяснил. Как решить эту задачу?
...
Рейтинг: 0 / 0
нужен код
    #36638922
breddred
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сразу скажу, что вариант использовать Сводную таблицу не подходит.
...
Рейтинг: 0 / 0
нужен код
    #36639036
breddred
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
то что сейчас

CODE NAME ID CASH
11111 РОМАН RUB0695 13
11111 РОМАН RUB0695 10
11111 РОМАН RUB0695 20
212 ПЕТР DOL8999 4
212 ПЕТР DOL8999 8
58900 ПАВЕЛ RUB7591 15
3970 ОЛЕГ RUB1313 3
3970 ОЛЕГ RUB1313 11



то что нужно чтобы было


CODE NAME ID CASH
11111 РОМАН RUB0695 43
58900 ПАВЕЛ RUB7591 15
3970 ОЛЕГ RUB1313 14
...
Рейтинг: 0 / 0
нужен код
    #36639262
Фотография vikttur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
breddredсразу скажу, что вариант использовать Сводную таблицу не подходит.
А формулы?
Если да, рисуйте пример.
...
Рейтинг: 0 / 0
нужен код
    #36639274
breddred
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Товарищи-Программисты, у кого какие идеи?
...
Рейтинг: 0 / 0
нужен код
    #36640800
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
breddred,


Если для вас удаление не критично, то сводная таблица.
Кстати, почему она вам не подходит ?
...
Рейтинг: 0 / 0
нужен код
    #36641987
Фотография vlth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Книга с данными должна быть закрыта.
Результаты запроса к ней помещаем в книгу, содержащую эту процедуру:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Dim cn As Object, rs As Object, fld As Object, i As Integer
Set cn = CreateObject("ADODB.Connection")
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Data Source=C:\путь_к_файлу\breddred.xls;Extended Properties=Excel 8.0"
Set rs = cn.Execute("SELECT CODE,NAME,ID,SUM(CASH) AS CASH FROM [лист1$] WHERE ID LIKE 'RUB%' GROUP BY NAME,CODE,ID")
With ThisWorkbook.Worksheets("Лист1")
    For i =  0  To rs.Fields.Count -  1 
        .Cells( 1 , i +  1 ) = rs.Fields(i).Name
    Next i
    .Cells( 2 ,  1 ).CopyFromRecordset rs
End With
cn.Close
Set rs = Nothing: Set cn = Nothing
...
Рейтинг: 0 / 0
нужен код
    #36641996
Фотография vlth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Объявление 'Dim fld As Object' - лишнее (можно удалить).
...
Рейтинг: 0 / 0
нужен код
    #36642112
Cyberbob
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сначала попробйте SUMIF (СУМЕСЛИ), а как это деляется смотрите в www.planetaexcel.ru -> примеры
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / нужен код
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]