передача данных через цикл в Excel VB - PullRequest
0 голосов
/ 02 мая 2018

у меня есть такие данные в файле Excel

Exportfile.xlsx

      A        B
1)    Head  31-Dec-2017
2)    a         23
3)    b         45
4)    c         46

Datasheet.xlsx

И в данных таблицы, как это

1)           **A**  
2) ***QUARTER          Data***
3) 31 Mar 2017  
4) 30 Jun 2017  
5) 30 Sep 2017  
6) 31 Dec 2017  
7)  
8)  
9)         **B**    
10) ***QUARTER          Data***
11) 31 Mar 2017 
12) 30 Jun 2017 
13) 30 Sep 2017 
14) 31 Dec 2017 
15) 
16) 
17)         **C**   
18) ***QUARTER          Data***
19) 31 Mar 2017 
20) 30 Jun 2017 
21) 30 Sep 2017 
22) 31 Dec 2017 

Теперь я хочу вставить значения из файла экспорта в таблицу данных и хочу, чтобы данные были такими

1)           **A**  
2) ***QUARTER          Data***
3) 31 Mar 2017  
4) 30 Jun 2017  
5) 30 Sep 2017  
6) 31 Dec 2017         23
7)  
8)  
9)         **B**    
10) ***QUARTER          Data***
11) 31 Mar 2017 
12) 30 Jun 2017 
13) 30 Sep 2017 
14) 31 Dec 2017          45
15) 
16) 
17)         **C**   
18) ***QUARTER          Data***
19) 31 Mar 2017 
20) 30 Jun 2017 
21) 30 Sep 2017 
22) 31 Dec 2017          46

Теперь я делаю этот код

Sub copy_data(File_Name)
   For i = 2 To 4
Windows("Exportfile.xlsx").Activate
    Sheets("ESheet").Select
         Cells(i, 2).Select
     Selection.Copy
Windows(File_Name).Activate
    Sheets("Dsheet").Select
   On Error Resume Next
  **j = '' here what i do** 
    Cells(j, 2).Select
   On Error Resume Next
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False

Next
End Sub

теперь в приведенном выше коде в строке J, что я должен сделать, чтобы значения копировались из файла экспорта и вставлялись в таблицу данных в квартале 31 декабря 2017 года по циклу

есть решение?

1 Ответ

0 голосов
/ 02 мая 2018

Если шаблон статический, как описано, это просто математика. Объявите и инициализируйте переменную start за пределами for с помощью 6 и добавьте формулу в цикл для j

j = start + ((i-2) *8)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...