Копирование рабочего листа портит проверки данных - PullRequest
0 голосов
/ 06 июня 2019

Когда я пытаюсь импортировать данные из одной рабочей книги в другую с теми же потребностями в данных, старая книга использует те же ссылки. Он портит проверку данных в книге, которую я скопировал, чтобы сделать ее = 'OldWorkbookSpecificSheet'! $ P $ 2: $ p $ 3. Могу ли я что-нибудь сделать, чтобы это исправить, или мне просто нужно снова создавать проверки данных каждый раз, когда я хочу что-то изменить. Любая помощь будет принята с благодарностью.

Sub CopyWorkbook(WB As String)

    Dim i As Integer
    Dim OtherWBVersion As String

    If (OtherWBVersion > "0510") Then
      With ThisWorkbook
         For i = 0 To 19
           .ImportRange WB, Me.Name, "F" & (4 + i * 25) & ":F" & (15 + i * 25)
           .ImportRange WB, Me.Name, "G" & (4 + i * 25) & ":S" & (15 + i * 25)
           .ImportRange WB, Me.Name, "E" & (18 + i * 25) & ":G" & (24 + i * 25)
           .ImportRange WB, Me.Name, "H" & (18 + i * 25) & ":H" & (24 + i * 25)
           .ImportRange WB, Me.Name, "J" & (18 + i * 25) & ":K" & (24 + i * 25)
           .ImportRange WB, Me.Name, "L" & (18 + i * 25) & ":L" & (24 + i * 25)

           .ImportRange WB, Me.Name, "N" & (20 + i * 25)
           .ImportRange WB, Me.Name, "Q" & (20 + i * 25)
           .ImportRange WB, Me.Name, "Q" & (22 + i * 25)
           .ImportRange WB, Me.Name, "P" & (22 + i * 25)
            .ImportRange WB, Me.Name, "N" & (22 + i * 25)
         Next i
      End With
     End If
End Sub






    Sub ImportRange(WB As String, WS As String, RngTo As String, Optional   RngFrom As String)
    If RngFrom = "" Then
        RngFrom = RngTo
    End If

    ActiveWorkbook.Worksheets(WS).Range(RngTo).Value = Workbooks(WB).Worksheets(WS).Range(RngFrom).Value
    End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...