Здравствуйте уважаемые мастера Excel столкнулся с проблемой и никак не могу решить Копирую диапазон дат и значений из первого файла вставляю в excel и значения с другого файла вставляю в тот же документ excel, на словах не могу объяснить проще показать в файле, Далее идет расхождение даты и часа потому что в одном столбике с датами есть 23 часа а во втором встречается только 22 часа в сутки.... извините за каламбур проще посмотреть файл на первом листе ошибка на втором требуемый результат
Здравствуйте уважаемые мастера Excel столкнулся с проблемой и никак не могу решить Копирую диапазон дат и значений из первого файла вставляю в excel и значения с другого файла вставляю в тот же документ excel, на словах не могу объяснить проще показать в файле, Далее идет расхождение даты и часа потому что в одном столбике с датами есть 23 часа а во втором встречается только 22 часа в сутки.... извините за каламбур проще посмотреть файл на первом листе ошибка на втором требуемый результатЛеонид84
Вот немного переделал может быть понятнее будит.... оч прошу помочь.. Лист 1 оригинал Лист 2 итог того что должно получится При ровнять к одной дате....
Вот немного переделал может быть понятнее будит.... оч прошу помочь.. Лист 1 оригинал Лист 2 итог того что должно получится При ровнять к одной дате....Леонид84
а чем Вам результат от Russel не нравится? Всё вроде похоже.
Единственное, я бы сначала сгенерировал дату-время (как базовый стержень), а потом ВПРом к этому "стержню" приставил оба массива. Причем генерировать дату-время можно и без предварительного анализа - просто диапазон дат с делением на 24 строки-часа каждой даты.
а чем Вам результат от Russel не нравится? Всё вроде похоже.
Единственное, я бы сначала сгенерировал дату-время (как базовый стержень), а потом ВПРом к этому "стержню" приставил оба массива. Причем генерировать дату-время можно и без предварительного анализа - просто диапазон дат с делением на 24 строки-часа каждой даты.Gustav
Gustav, результат от Russel не подходит потому как данных около 28 -40 тысяч и при прохождении первой сотни они перетосуются и будит сплошное #Н/Д - это не подходит. Я пытаюсь найти простое решение данного вопроса... И извините меня если я не правильно понял решение Russel
Gustav, результат от Russel не подходит потому как данных около 28 -40 тысяч и при прохождении первой сотни они перетосуются и будит сплошное #Н/Д - это не подходит. Я пытаюсь найти простое решение данного вопроса... И извините меня если я не правильно понял решение RusselЛеонид84
результат от Russel не подходит потому как данных около 28 -40 тысяч и при прохождении первой сотни они перетосуются и будит сплошное #Н/Д - это не подходит.
Не понял, что перетасуется. Решение Russel'а выглядит вполне корректным. Впрочем, если вас смущает #Н/Д, его можно и убрать.
результат от Russel не подходит потому как данных около 28 -40 тысяч и при прохождении первой сотни они перетосуются и будит сплошное #Н/Д - это не подходит.
Не понял, что перетасуется. Решение Russel'а выглядит вполне корректным. Впрочем, если вас смущает #Н/Д, его можно и убрать.alex1248
Прикрепляю еще один файл.... я просто никак не могу понять и применить ту формулу которую описал Russel, прошу еще немного вашего времени в решении моей проблемы....
Прикрепляю еще один файл.... я просто никак не могу понять и применить ту формулу которую описал Russel, прошу еще немного вашего времени в решении моей проблемы....Леонид84
Еще один способ, через сводные, более универсальный. Описание: 1. Добавляем столбец "таблица" 2. Объединяем данные в одну таблицу, корректно заполнив при этом новый столбец (строки с н/д я убрал) 3. Формируем сводную таблицу 4. Настраиваем сводную 5. Profit!
Еще один способ, через сводные, более универсальный. Описание: 1. Добавляем столбец "таблица" 2. Объединяем данные в одну таблицу, корректно заполнив при этом новый столбец (строки с н/д я убрал) 3. Формируем сводную таблицу 4. Настраиваем сводную 5. Profit!Russel
прошу еще немного вашего времени в решении моей проблемы....
Держите до кучи универсальное SQL-ное решение на базе ADO. В процедуре VBA надо по аналогии с имеющимися там сейчас задать реальные адреса двух таблиц без заголовков. Результат выполнения помещается на другой рабочий лист. Значения ошибок типа #Н/Д ADO не воспринимает, точнее, воспринимает как пустые значения.
[vba]
Код
Sub join2tables()
Dim rst As Object Dim cnn As String Dim sql As String Dim i As Integer Dim table1 As String Dim table2 As String
прошу еще немного вашего времени в решении моей проблемы....
Держите до кучи универсальное SQL-ное решение на базе ADO. В процедуре VBA надо по аналогии с имеющимися там сейчас задать реальные адреса двух таблиц без заголовков. Результат выполнения помещается на другой рабочий лист. Значения ошибок типа #Н/Д ADO не воспринимает, точнее, воспринимает как пустые значения.
[vba]
Код
Sub join2tables()
Dim rst As Object Dim cnn As String Dim sql As String Dim i As Integer Dim table1 As String Dim table2 As String
Gustav, Мне очень понравилось ваше решение с помощью процедуры VBA, но разобраться так и не смог Скидываю вам фал в котором нужно сделать нечто подобное! С процедурой VBA !
Gustav, Мне очень понравилось ваше решение с помощью процедуры VBA, но разобраться так и не смог Скидываю вам фал в котором нужно сделать нечто подобное! С процедурой VBA !Леонид84
но разобраться так и не смог Скидываю вам фал в котором нужно сделать нечто подобное! С процедурой VBA !
Как я понимаю, в последнем задании как раз и надо воспользоваться функцией ВПР. Т.е. имеется "таблица 1" (точнее, диапазон). В нее надо прописать некие значения из "таблицы 2", основываясь на совпадении значений известного ключевого поля (полей) в обеих таблицах. В роли ключа в этой задаче выступает пара полей "дата-час". После применения ВПР затем можно вручную скопировать "таблицу 1" и вставить ее на Лист2 "как значения". Не вижу здесь необходимости в моей процедуре. Или Вы хотите, чтобы я написал новую процедуру?
Моя же вышеопубликованная процедура берет две таблицы и делает из них единую третью на базе отсортированного списка всех значений ключевых полей, встретившихся хотя бы в одной из двух таблиц. Чувствуете разницу с ВПР? Хотя да, удалив из третьей таблицы лишние столбцы и оставив только "дата1", "час 1" и "значение 2", можно получить тот же эффект, как у ВПР.
Так что же Вам в конце концов хочется получить? Кстати, мою процедуру не обязательно сразу полностью понимать. Достаточно подправить адреса диапазонов и запустить на выполнение. Это умеете делать?
но разобраться так и не смог Скидываю вам фал в котором нужно сделать нечто подобное! С процедурой VBA !
Как я понимаю, в последнем задании как раз и надо воспользоваться функцией ВПР. Т.е. имеется "таблица 1" (точнее, диапазон). В нее надо прописать некие значения из "таблицы 2", основываясь на совпадении значений известного ключевого поля (полей) в обеих таблицах. В роли ключа в этой задаче выступает пара полей "дата-час". После применения ВПР затем можно вручную скопировать "таблицу 1" и вставить ее на Лист2 "как значения". Не вижу здесь необходимости в моей процедуре. Или Вы хотите, чтобы я написал новую процедуру?
Моя же вышеопубликованная процедура берет две таблицы и делает из них единую третью на базе отсортированного списка всех значений ключевых полей, встретившихся хотя бы в одной из двух таблиц. Чувствуете разницу с ВПР? Хотя да, удалив из третьей таблицы лишние столбцы и оставив только "дата1", "час 1" и "значение 2", можно получить тот же эффект, как у ВПР.
Так что же Вам в конце концов хочется получить? Кстати, мою процедуру не обязательно сразу полностью понимать. Достаточно подправить адреса диапазонов и запустить на выполнение. Это умеете делать?Gustav