Excel — Управление базой данных для импорта в CRM

Excel — Управление базой данных для импорта в CRM

У меня есть база данных, в которой каждая строка содержит различную информацию о компании (название, адрес, веб-сайт, телефон и т. д.). Каждая строка также содержит три контакта и соответствующие им должности. Заголовки: Имя генерального директора, Должность генерального директора, Имя 2, Должность 2, Имя 3, Должность 3. Моя проблема в том, что при импорте в мою CRM она захватывает только один контакт на строку. Похоже, мне нужно продублировать исходную строку (сохранив всю информацию о компании) и иметь одно имя контакта в каждой строке. Пожалуйста, помогите мне это сделать! Большое спасибо!!!

решение1

Вы можете сделать все, что захотите, на основе макроса Excel. Вам нужновключите вкладку «Разработчик»в Excel 2013. Затем запишите макрос с включенной опцией «Использовать относительную ссылку» и создайте цикл, который перенесет company, name2, title2 в новую строку. Затем сделайте это снова для name3 и title3.

Макро-шаги:

  1. перейти к A2, предполагая, что у вас есть заголовок строки
  2. начать запись макроса
  3. вставьте строку, пока у вас выделена строка 3
  4. скопируйте и вставьте название компании сверху в новую строку
  5. вырезать и вставить name2, title 2 в новую строку
  6. вставьте новую строку еще раз
  7. мило и вставьте имя 3 и заголовок в новую строку
  8. затем переместите свою ячейку на a5.
  9. Это будет конечная точка для повторения макроса.

Макрос Excel

Ваш записанный макрос должен выглядеть примерно так:

Sub Macro2()
'
' Macro2 Macro
'

'
    ActiveCell.Offset(1, 0).Rows("1:1").EntireRow.Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    ActiveCell.Offset(-1, 0).Range("A1").Select
    Selection.Copy
    ActiveCell.Offset(1, 0).Range("A1").Select
    ActiveSheet.Paste
    ActiveCell.Offset(-1, 3).Range("A1").Select
    Application.CutCopyMode = False
    Selection.Cut
    ActiveCell.Offset(1, -2).Range("A1").Select
    ActiveSheet.Paste
    ActiveCell.Offset(-1, 3).Range("A1").Select
    Selection.Cut
    ActiveCell.Offset(1, -2).Range("A1").Select
    ActiveSheet.Paste
    ActiveCell.Offset(1, 0).Rows("1:1").EntireRow.Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    ActiveCell.Offset(-1, 0).Range("A1").Select
    Selection.Copy
    ActiveCell.Offset(1, 0).Range("A1").Select
    ActiveSheet.Paste
    ActiveCell.Offset(-2, 5).Range("A1").Select
    Application.CutCopyMode = False
    Selection.Cut
    ActiveCell.Offset(2, -4).Range("A1").Select
    ActiveSheet.Paste
    ActiveCell.Offset(-2, 5).Range("A1").Select
    Selection.Cut
    ActiveCell.Offset(2, -4).Range("A1").Select
    ActiveSheet.Paste
    ActiveCell.Offset(1, -2).Range("A1").Select
End Sub

Если вам нужно повторить больше одного раза, то вам нужнодругой макроскоторый вызывает этот макрос необходимое вам количество раз:

Sub Test()
Call Macro2(3) 'run macro 3 times
End Sub

Связанный контент