Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2017, 09:56   #11
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

вот "это" раскрашивает на тестовом файле 100%
Код:
Private Sub CommandButton1_Click()
    Dim i As Long, x As Range, Fst As String, A1 As Long, A2 As Long
    Application.ScreenUpdating = False: Workbooks(ComboBox1.Text).Sheets(Val(TextBox3)).Activate
    A1 = Val(TextBox1.Text): A2 = Val(TextBox2.Text)
    With Workbooks(ComboBox2.Text).Sheets(Val(TextBox4))
        Columns(A1).Interior.ColorIndex = xlNone: .Columns(A2).Interior.ColorIndex = xlNone
        For i = 2 To Cells(Rows.Count, A1).End(xlUp).Row
            Set x = .Columns(A2).Find(what:=Cells(i, A1), LookAt:=xlWhole)
            If Not x Is Nothing Then
                Cells(i, A1).Interior.ColorIndex = 6: Fst = x.Address
                Do
                    .Cells(x.Row, A2).Interior.ColorIndex = 6
                    Set x = .Columns(A2).FindNext(x)
                Loop While Fst <> x.Address
    End If: Next: End With
    Unload Me
End Sub
из сообщения 1 этой темы надо оставить только
Код:
Sub поискивставка()
 UserForm1.Show:
End Sub
все остальное в модуле - шлак который только отвлекает
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.

Последний раз редактировалось Aleksandr H.; 26.05.2017 в 09:59.
Aleksandr H. вне форума Ответить с цитированием
Старый 26.05.2017, 12:38   #12
danika24
Пользователь
 
Регистрация: 20.07.2011
Сообщений: 47
По умолчанию

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

Последний раз редактировалось danika24; 26.05.2017 в 13:08.
danika24 вне форума Ответить с цитированием
Старый 26.05.2017, 13:06   #13
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Цитата:
Сообщение от danika24 Посмотреть сообщение
книгу внутри с макросом, который у вас работает
___
Вложения
Тип файла: zip поисквставка с выделением повторов.zip (21.0 Кб, 5 просмотров)
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 26.05.2017, 13:08   #14
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

угу. добавлю. проблема в том, что на кнопку в форме "Сравнить" назначен
такой код:
Код:
Private Sub CommandButton1_Click()
    Dim i As Long, x As Range, Fst As String, A1 As Long, A2 As Long
    Application.ScreenUpdating = False: Workbooks(ComboBox1.Text).Sheets(Val(TextBox3)).Activate
    A1 = Val(TextBox1.Text): A2 = Val(TextBox2.Text)
    With Workbooks(ComboBox2.Text).Sheets(Val(TextBox4))
        Columns(A1).Interior.ColorIndex = xlNone: .Columns(A2).Interior.ColorIndex = xlNone
        For i = 2 To Cells(Rows.Count, A = 1).End(xlUp).Row
            Set x = .Columns(A2).Find(what:=Cells(i, A1), LookAt:=xlWhole)
            If Not x Is Nothing Then
                Cells(i, A1).Interior.ColorIndex = 6: Fst = x.Address
                Do
                    .Cells(x.Row, A2).Interior.ColorIndex = 6
                    Set x = .Columns(A2).FindNext(x)
                Loop While Fst <> x.Address
    End If: Next: End With
    Unload Me
End Sub
красным я выделил код, который и приводит к ошибке
Serge_Bliznykov вне форума Ответить с цитированием
Старый 26.05.2017, 13:20   #15
danika24
Пользователь
 
Регистрация: 20.07.2011
Сообщений: 47
По умолчанию

Не работает ошибка.
danika24 вне форума Ответить с цитированием
Старый 26.05.2017, 13:46   #16
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от danika24 Посмотреть сообщение
Не работает ошибка.
проверил. работает.

попробуйте ещё раз.
файл с макросом: Выделение повторов.zip
(я переименовал его, чтобы Вы не путались, какой запускать)

при запуске и открытии формы заполняем параметры:
pos1.jpg

после нажатия на кнопку "Сравнить":
pos2.png
Serge_Bliznykov вне форума Ответить с цитированием
Старый 26.05.2017, 13:58   #17
danika24
Пользователь
 
Регистрация: 20.07.2011
Сообщений: 47
По умолчанию

все спасибо оказалось нам что то сделали с екселм на работе переустановила все заработало. И вопрос еще не могу вспомнит как код спрятанный увидить, чтобы перенести в другую книгу.
danika24 вне форума Ответить с цитированием
Старый 26.05.2017, 14:04   #18
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от danika24 Посмотреть сообщение
И вопрос еще не могу вспомнит как код спрятанный увидить
alt-F11
или, тоже самое - в главное меню "Разработчик" - "Visual Basic"
Serge_Bliznykov вне форума Ответить с цитированием
Старый 26.05.2017, 15:21   #19
danika24
Пользователь
 
Регистрация: 20.07.2011
Сообщений: 47
По умолчанию

Еще нужна строка кода которая проставляет значение из листа 2 второго столбца, в 1 лист третьего столбца .(чтобы увидеть изменения в названии если есть.
danika24 вне форума Ответить с цитированием
Старый 26.05.2017, 15:30   #20
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от danika24 Посмотреть сообщение
Еще нужна строка кода которая проставляет значение из листа 2 второго столбца, в 1 лист третьего столбца
может быть, устроит прописать ручками вызов функции =ВПР() в третьем столбце?

можно, конечно, и макрос допилить.
но тогда,
- либо универсальность вся коту под хвост (смысл задавать книги, номера листов и столбцов, если в коде будет прописано: " значение из листа 2 второго столбца, в 1 лист третьего столбца")
- либо городить дополнительные поля в форме - а это явно не одна и не две строчки в коде.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Раскраска языков caute Microsoft Office Word 11 11.06.2013 08:48
раскраска DBCtrlGrid Lui C++ Builder 0 31.08.2012 02:41
Раскраска диаграммы dayfuaim Microsoft Office Excel 8 22.08.2010 15:44
Раскраска эллипса rubik Мультимедиа в Delphi 1 02.05.2010 05:21
раскраска матрицы jeyjoe Помощь студентам 0 12.11.2009 18:49