Страницы: 1
RSS
Сравнить значения ячеек с разных файлов, Есть два файла , надо сравнить определенные ячейки между файлами
 
Здравствуйте! Подскажите пожалуйста,как можно переделать этот код?) Он сравнивает значение ячеек в одном файле.

А мне нужно сравнить значение вот так:
Код
Cells(15,2).Value = С:\Моидокументы\Иксель.xls (Cells(2,2))

т.е. в открытом файле сравнить знач ячейки из совсем другого файла...как этот код переделать?

Код
Private Sub cmdClick()

txtNomMerk.Text = Cells(1,4).Value+1
Cells(15,2).Value = Cells(2,2)
Cells(27,2).Value = Cells(2,2)

End Sub
 
Может так вот?
Код
Private Sub cmdClick()

Dim firstBook As Workbook
Dim secondBook As Workbook
Set firstBook = ActiveWorkbook
Set secondBook = Workbooks.Open("D:\\ОбъектСравнения.xlsx")
a = firstBook.Sheets(ИмяЛистаОткрытого).Cells(15, 2)
b = secondBook.Sheets(ИмяЛистаФайлаСКемСравниваем).Cells(2, 2)
            If a = b Then
            Cells(15,2).Value = b

           End If

End Sub
 
Обе книги должны быть открыты. Не тестил.
Cells(15,2).Value = Workbooks("ПолныйПутьКФайлу").Worksheets("ИмяЛиста").Cells(2,2)

Цитата
Вероника Куртова: Может так вот?
попробуйте. Смысл тот же))
Изменено: Jack Famous - 09.11.2022 20:50:59
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Забыла сказать, второй файл должен быть закрыт (((
 
Вероника Куртова, это тоже самое, что читать мысли человека на расстоянии...
 
Я вас  понимаю. Ну в целом задача такая... Открыт один фпйд, в котором идет сравнение значения  определенной ячейки со значением определенной ячейки с другого, закрытого файла эксель, который находится на компьютере и если значения равны то скопировать значение ячейки м закрытого файла эксель.  
 
Пока второй файл "закрыт" программа о его существовании даже не догадывается, а вы хотите, чтобы она еще и внутрь этого, как вы изящно выразились, фпйд (точнее ведь и не скажешь! именно фпйд!) "заглянула", чего-то там сравнила и только при каких-то там условиях чего-то сделала. :)
Файл по-любому открывать надо (другое дело, что пользователю об этом можно не говорить и не показывать). Открыли тихо, по-военному, сравнили, если надо - скопировали, закрыли, положили, где взяли. Можно даже без сохранения изменений его тихо закрыть.
Кому решение нужно - тот пример и рисует.
 
Цитата
написал:
Пока второй файл "закрыт" программа о его существовании даже не догадывается, а вы хотите, чтобы она еще и внутрь этого, как вы изящно выразились, фпйд (точнее ведь и не скажешь! именно фпйд!) "заглянула", чего-то там сравнила и только при каких-то там условиях чего-то сделала.
Файл по-любому открывать надо (другое дело, что пользователю об этом можно не говорить и не показывать). Открыли тихо, по-военному, сравнили, если надо - скопировали, закрыли, положили, где взяли. Можно даже без сохранения изменений его тихо закрыть.
а как это незаметно от пользователя сделать?  
 
Цитата
написал:
со значением определенной ячейки с другого, закрытого файла эксель
так бы сразу и сказали, что вам обязательно с закрытого файла брать данные
предлагаю вам этим заняться самостоятельно, когда получится - покажете как это сделали, мы все у вас поучимся, если сможем разобраться в вашем коде
удачи!
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Ну можно ведь заюзать функционал формул или ExecuteExcel4Macro. Но имя листа знать всёж нужно.
 
Цитата
написал:
а как это незаметно от пользователя сделать?
нажмите Ctrl+Alt+Del
откройте диспетчер задач
в верхней части вы увидите 5-10 задач, которые инициировали вы:
открыт какой-то Интернет-эксплорер
может Excel открыт
Проводник
пара месенджеров
не знаю что еще...
теперь смотрите ниже
Основные процессы (у меня 72)
еще ниже
Процессы Windows (у меня 89)
видите там значения мелькают, то тот загрузил процессор какими-то вычислениями, то другой (из тех что находятся в поле зрения)
какие из этих процессов выполняются по вашей инициативе? кого из них вы запускали лично или настроили в автозапуске их работу?
как наличие всех этих фоновых процессов влияет на ваши отношения с компьютером?
ровно столько же измениться для вас, как пользователя, если макрос в какой-то момент откроет файл, возьмет из него данные и закроет его
но нет же... раз в месяц обязательно появляется кто-то на форуме, кому непременно с закрытого файла, вынь да полож. поиском не пробовали пользоваться "получить данные с закрытого файла"
удачи!
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Вероника Куртова, данные из закрытого файла никак не взять. Чтобы взять данные из файла - его обязательно надо открыть. Но совсем другое дело, что открыть файл, взять из него данные можно так, что пользователь сидя перед компьютером глазами ничего не увидит. Макросы умеют отключать (замораживать) экран на время работы. То есть можно взять данные из 100 файлов, сравнить эти данные, но человек запустивший макрос вообще ничего не увидит на экране, а лишь какой-то конечный итог, например, сообщение: "данные совпали!" Но файлы надо открывать, чтобы прочитать из них информацию и сделать сравнение взятых из них данных
Изменено: New - 10.11.2022 03:36:52
Страницы: 1
Наверх