0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 105
1

Копирование данных с листа1 на Лист2 с Пробелами

03.06.2016, 08:09. Показов 1385. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите столкнулся с такой проблемой, с пробелами и т.д

На листе1 в B4:B имеется фирмы
На листе1 в C4:C имеется Авто
На листе1 в D4: имеется Поломка

Нужно на лист2
Скопировать но при этом на B4
где
ООО РМО "ПЕРВЫЙ ПРОСПЕКТ" = 1
OOO СК "Пятая колонна-Ж" (ранее ООО НМСК "Русский север") = 2
OOO СК "Городовой" (ранее ООО НМСК "Городовой метр") = 3
Где пусто = 0
(но при этом так чтобы если заполнена последняя ячейки Авто C19

Скопировать но при этом на C4
где
Опель Инсигниа №25 = 89
Опель Кадет №96 = 101
Опель Фронтера №695 5д = 104
Мазда 223 №78 - 99
Шевролет Каптива 3.2 №59 = 45

Скопировать но при этом на D4
где
T40.6-Замена аккумулятора = T40.6
I20.9-Замена саленблока = I20.9
T78.4-Покраска кузова = T78.4
I200.9-Ремонт ходовой = I200.9
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.06.2016, 08:09
Ответы с готовыми решениями:

Перенос данных из листа1 в лист2 с шагом в 7 ячеек
Здравствуйте, уважаемые знатоки. Помогите пожалуйста решить задачу. Нужна формула,которая переносит...

Перенос из листа1 в лист2
Помогите в вопросе. Нужно из листа "Данные" перенести значения в лист "результат", с помощью...

Как перенести значения с Листа1 на Лист2 ссылкой?
На Лист1 значения в диапазоне В3:AF3 . Перенести надо на Лист2 В5:В35 чтобы была именно ссылка на...

Сделать ссылку с Листа1 на Лист2, и взять не значение, формулу
Здравствуйте форумчане! Нуждаюсь в следующей подсказке. Хочу с Листа2 на Лист1 вытащить формулу....

12
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 105
03.06.2016, 08:12  [ТС] 2
Файл
Вложения
Тип файла: 7z 03-06.7z (9.1 Кб, 2 просмотров)
0
3894 / 2301 / 774
Регистрация: 02.11.2012
Сообщений: 6,114
03.06.2016, 08:37 3
наберите вручную пару строк того что должно быть в итоге на втором листе. по описанию пока не очень понятно.
0
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 105
03.06.2016, 09:02  [ТС] 4
Прикладываю файл
Вложения
Тип файла: 7z 03-062.7z (9.7 Кб, 6 просмотров)
0
3894 / 2301 / 774
Регистрация: 02.11.2012
Сообщений: 6,114
03.06.2016, 09:19 5
макросом обязательно?
формулами
Код
 для столбца В
=ЕСЛИОШИБКА(ПОИСКПОЗ(Лист0!B4;Лист0!$B$4:$B$19;);)
для D
=ЛЕВСИМВ(Лист0!D4;ПОИСК("-";Лист0!D4)-1)
для столбца С нужна таблица соответствия и использовать ф-цию ВПР.
0
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 105
03.06.2016, 09:24  [ТС] 6
Да именно макросом
0
5605 / 1591 / 412
Регистрация: 23.12.2010
Сообщений: 2,382
Записей в блоге: 1
03.06.2016, 16:12 7
Лучший ответ Сообщение было отмечено dmr12345 как решение

Решение

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Option Compare Text
Sub Копирование_с_присвоением_кодов()
    Dim i&, j&, LastRow&, T
    With Sheets(1)
        With .UsedRange
            LastRow = .Rows.Count + .Row - 1
        End With
        For i = 4 To LastRow
            For j = 2 To 4
                T = Sheets(1).Cells(i, j)
                Select Case Trim(T)
                    Case "ООО РМО ""ПЕРВЫЙ ПРОСПЕКТ""": T = 1
                    Case "OOO СК ""Пятая колонна-Ж"" (ранее ООО НМСК ""Русский север"")": T = 2
                    Case "OOO СК ""Городовой"" (ранее ООО НМСК ""Городовой метр"")": T = 3
                    Case "Опель Инсигниа №25": T = 89
                    Case "Опель Кадет №96": T = 101
                    Case "Опель Фронтера №695 5д": T = 104
                    Case "Мазда 223 №78": T = 99
                    Case "Шевролет Каптива 3.2 №59": T = 45
                    Case "Опель Антара №69": T = 125
                    Case "I20.0-Общая диагностика": T = "I20.0"
                    Case "I20.9-Замена саленблока": T = "I20.9"
                    Case "T40.6-Замена аккумулятора": T = "T40.6"
                    Case "T51-Чистка салона": T = "T51"
                    Case "T78.4-Покраска кузова": T = "T78.4"
                    Case "I200.9-Ремонт ходовой": T = "I200.9"
                    Case "", "-": If j = 2 Then T = 0 Else T = ""
                End Select
                Sheets(2).Cells(i, j) = T
            Next j
        Next i
    End With
End Sub
1
6922 / 2832 / 543
Регистрация: 19.10.2012
Сообщений: 8,645
03.06.2016, 17:06 8
Если будет напрягать скорость работы - судя по коду можно привлечь массивы и словарь, и будет раз так в 50 быстрее.
0
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 105
03.06.2016, 20:34  [ТС] 9
Вставил код в основной свой код пока получилась путаница, разбираюсь
0
6922 / 2832 / 543
Регистрация: 19.10.2012
Сообщений: 8,645
03.06.2016, 22:28 10
Вариант на словаре, для критериев отдельный лист.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Option Explicit
 
Sub tt()
    Dim a, i&, ii&
    With CreateObject("scripting.dictionary"): .comparemode = 1
        a = Sheets("критерии").[a1].CurrentRegion.Value
        For i = 1 To UBound(a): .Item(a(i, 1)) = a(i, 2): Next
        a = Sheets("Лист0").[B3].CurrentRegion.Value
        For i = 1 To UBound(a)
            For ii = 1 To UBound(a, 2)
                a(i, ii) = .Item(Trim(a(i, ii)))
            Next
        Next
    End With
    Sheets("Лист1").[f3].Resize(UBound(a, 1), UBound(a, 2)) = a
End Sub
Вложения
Тип файла: rar 03-062H.rar (18.9 Кб, 5 просмотров)
1
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 105
04.06.2016, 09:14  [ТС] 11
For j = 7 To 11 - охватывает весь диапазон копирования сразу двух листов
Если данные на листе 1 нужно скопировать в разные столбцы на лист2
0
6922 / 2832 / 543
Регистрация: 19.10.2012
Сообщений: 8,645
04.06.2016, 19:16 12
#11 вообще о чём?
Я написал код, дающий результат точно как в файле 03-062.7z (9.7 Кб), только сдвинул вывод чуть вправо, чтоб можно было свериться формулами с заказанным.
Кстати - нет такого слова/понятия как "саленблок", но если в базе так забито - то конечно у вас есть
0
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 105
07.06.2016, 11:34  [ТС] 13
Большущее спасибище очень помогло
0
07.06.2016, 11:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.06.2016, 11:34
Помогаю со студенческими работами здесь

Некорректно работает перенос данных из Лист1 в Лист2
Здравствуйте, начал делать список студентов в excel с тремя листами, первый - список студентов,...

Автозаполнение данных с Лист2 в Лист1 при совпадении ФИО
Добрый день, с синтаксисом VBA совсем не знаком, может кто сталкивался или есть похожие решения...

Автокопирование данных при заполнении столбцов (строк) с Лист1 на Лист2
Искал всюду формулу но не нашел. Когда заполняю столбец в листе1 этиже данные автоматически...

Перемешение данных с Excel с двух файла в третий или с листа1 и ласта2 в лист3 в одном файле
Система работает следующим образом: Мне скидуют файл "Ф1" в котором перечень магазинов на которые...

Копирование путей с пробелами
cp -r источник назначение вопрос что надо, чтобы произошло копирование, если пути (адреса) ...

Копирование файлов с пробелами в имени
Здравствуйте. использую бат файлы в домене что бы при входе копировался ярлык. Вот прииер: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru