Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Программирование под Windows > Visual Basic
Перезагрузить страницу Нужна помощь с Макрос
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
Сергей Иванов Сергей Иванов вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 3
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 29.04.2018
По умолчанию Нужна помощь с Макрос - 29.04.2018, 10:16

У меня есть шесть столбцов которые содержат числа. Пример:
1 3 4 5 6 7
2 2 3 5 6 6
1 3 4 5 5 8
2 4 5 6 7 9
Как удалить строки содержащие одинаковые значения? В данном примере строки 2 и 3. Заранее спасибо за помощь
Ответить с цитированием
  (#2 (permalink)) Старый
pashulka pashulka вне форума
Member
 
Сообщений: 1,872
Сказал(а) спасибо: 2
Поблагодарили 57 раз(а) в 53 сообщениях
Регистрация: 11.03.2005
По умолчанию 29.04.2018, 13:09

Можно просто ввести в любой дополнительный столбец формулу, затем отфильтровать, выбрав критерий - больше 1 и удалить полученные строки.

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

Код:
Private Sub Test()
    Dim iSource As Range, iRow&
    Set iSource = ActiveSheet.UsedRange.Rows
    
    With Application
         .ScreenUpdating = False
         iRow& = Cells.SpecialCells(xlLastCell).Row
         For iRow& = iRow& To 1 Step -1
             If .Max(.CountIf(iSource(iRow), iSource(iRow))) > 1 Then iSource(iRow).Delete
         Next
         .ScreenUpdating = True
    End With
End Sub
P.S. Зачем на других форумах выкладывать другие данные? Чтобы никто не догадался, что это тоже Вы
Ответить с цитированием
Пользователь сказал cпасибо:
Сергей Иванов (30.04.2018)
  (#3 (permalink)) Старый
Сергей Иванов Сергей Иванов вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 3
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 29.04.2018
По умолчанию 29.04.2018, 14:02

Огромное спасибо. Кому надо тот и так быстро догадается
Ответить с цитированием
  (#4 (permalink)) Старый
pashulka pashulka вне форума
Member
 
Сообщений: 1,872
Сказал(а) спасибо: 2
Поблагодарили 57 раз(а) в 53 сообщениях
Регистрация: 11.03.2005
По умолчанию 29.04.2018, 16:06

На всякий случай - в строках #7, 8 остался ненужный символ, а именно &
Ответить с цитированием
  (#5 (permalink)) Старый
Сергей Иванов Сергей Иванов вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 3
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 29.04.2018
По умолчанию Усложненная задача - 30.04.2018, 06:49

А здесь задача посложнее. Пример: Есть две линии
1 4 6 6 13 19 19 4 6 13 1 6 Как записать формулу в Макрос чтобы получилась вот такая линия 6 2 3 5 1 4 ( номер 19=6 потому что он на шестом месте и т.д.).Еще я не знаю как первому номеру 6 указать меньшую позицию чем второму если считать слева направо. Должно выглядеть так:
1 4 6 6 13 19 Пробел 19 4 6 13 1 6 Пробел 6 2 3 5 1 4
Ответить с цитированием
Ads.
  (#6 (permalink)) Старый
pashulka pashulka вне форума
Member
 
Сообщений: 1,872
Сказал(а) спасибо: 2
Поблагодарили 57 раз(а) в 53 сообщениях
Регистрация: 11.03.2005
По умолчанию 30.04.2018, 08:17

В таких случаях, обычно выкладывают файл .xls содержащий две таблицы, что есть и что нужно получить. И главное, об'яснение, почему, например, из строки 1 4 6 6 13 19 19 4 6 13 мы должны получить 6 2 3 5 1 4
Ответить с цитированием
  (#7 (permalink)) Старый
Сергей Иванов Сергей Иванов вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 3
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 29.04.2018
По умолчанию 30.04.2018, 10:48

Я новый человек на этом форуме. Не могу понять как вставить файл.Пробовал. Говорит неккоректный файл
Ответить с цитированием
  (#8 (permalink)) Старый
Сергей Иванов Сергей Иванов вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 3
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 29.04.2018
По умолчанию 30.04.2018, 10:49

Не даёт вставить xls
Ответить с цитированием
  (#9 (permalink)) Старый
Сергей Иванов Сергей Иванов вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 3
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 29.04.2018
По умолчанию 30.04.2018, 11:07

Пробую тхт файл
Вложения
Тип файла: txt Tect.txt (127 байт, 122 просмотров)
Ответить с цитированием
  (#10 (permalink)) Старый
pashulka pashulka вне форума
Member
 
Сообщений: 1,872
Сказал(а) спасибо: 2
Поблагодарили 57 раз(а) в 53 сообщениях
Регистрация: 11.03.2005
По умолчанию 30.04.2018, 11:35

Архив .rar, .zip точно можно прикрепить к теме, только даже в текстовом файле я не вижу об'яснений, почему из таблицы1 должна получиться таблица2. К, счастью, я не единственный посетитель этой темы, может найдутся другие, которые увидят логику трансформации...
Ответить с цитированием
  (#11 (permalink)) Старый
Сергей Иванов Сергей Иванов вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 3
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 29.04.2018
По умолчанию 30.04.2018, 11:44

Зачем Вам объяснение для чего это мне нужно. Меня интересует Это можно сделать или нет?
Ответить с цитированием
  (#12 (permalink)) Старый
pashulka pashulka вне форума
Member
 
Сообщений: 1,872
Сказал(а) спасибо: 2
Поблагодарили 57 раз(а) в 53 сообщениях
Регистрация: 11.03.2005
По умолчанию 30.04.2018, 11:53

С чего Вы взяли, что меня интересует для чего это нужно ? Где хоть на намек на это ? Повторюсь, в третий раз, я не вижу связи между тем, что есть и нужно, если она(связь) есть, значит задача решаема. Но гадать я не буду
Ответить с цитированием
Ads
  (#13 (permalink)) Старый
Сергей Иванов Сергей Иванов вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 3
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 29.04.2018
По умолчанию 30.04.2018, 12:12

Вот я и прошу помощи в решении этой задачи. Первая линия номера по порядку вторая линия как они в реале выпадали третья линия порядок выпадания номеров. Вот и все понятие просто мне прислали архив номеров по порядку а у меня по выпаду я хочу их просто пронумеровать от 1 до 6 Это ведь так просто вместо того чтобы печатать эти номера
Ответить с цитированием
  (#14 (permalink)) Старый
pashulka pashulka вне форума
Member
 
Сообщений: 1,872
Сказал(а) спасибо: 2
Поблагодарили 57 раз(а) в 53 сообщениях
Регистрация: 11.03.2005
По умолчанию 30.04.2018, 12:51

Или формула массива :

Код:
=ИНДЕКС(H1:M1;O1:T1)
Или вводите обычную формулу и протягиваете(копируете) её в этой же строке, но столбцам.

Код:
=ИНДЕКС($H$1:$M$1;O1)
Ответить с цитированием
Пользователь сказал cпасибо:
Сергей Иванов (30.04.2018)
  (#15 (permalink)) Старый
Сергей Иванов Сергей Иванов вне форума
Member
 
Сообщений: 32
Сказал(а) спасибо: 3
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 29.04.2018
По умолчанию 30.04.2018, 13:23

Огромное спасибо. А макросом можно записать?
Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
нужна помощь Denis Khudyakov Любые вопросы от новичков 31 18.01.2015 15:26
нужна помощь по HDD / помощь по работе с HDAT2 ruslanlook Накопители 1 20.11.2013 15:18
Нужна помощь в программе паскаль. нужна до субботы. Snake95 Pascal 3 18.10.2013 00:36
Нужна помощь! jeka45rus Техническая поддержка 1 21.06.2013 19:24
Нужна помощь Александр28 Разное 4 16.11.2012 17:20
нужна помощь uvajuha Любые вопросы от новичков 12 02.11.2012 02:54
Нужна помощь Wtf?!Joker Память 8 18.07.2011 18:27
Нужна помощь!!! (Anton) Windows XP 1 25.06.2011 11:56
нужна помощь! очень нужна! ulana999i999 Prolog 0 17.04.2010 14:13
Нужна помощь Odin-online Prolog 2 22.09.2009 22:26
Очень нужна нужна помощь в решении задачи NecroDevil Prolog 18 16.01.2009 14:22



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов