Excel VBA Worksheets.codename выдает ошибку - PullRequest
0 голосов
/ 27 сентября 2019

У меня есть имя листа (вкладки) под названием «data», кодовое имя листа также «data», когда я использую;

Cells(rij, "K") = Worksheets("data").Cells(1, "F")

Работает нормально, но когда я использую;

Cells(rij, "I") = data.Cells(1, "F")

выдает ошибку.

Ответы [ 4 ]

0 голосов
/ 28 сентября 2019

Я знаю проблему и у меня есть решение.Я объявил несколько переменных.

'Public cainA As Worksheet
'Public data As Worksheet
'Public eindblad As Worksheet

Sub reken(rij, kol, kolnaam)
Application.EnableEvents = False
Application.ScreenUpdating = False

И теперь сделал это как комментарии.Теперь это работает.

Спасибо за вашу поддержку.

0 голосов
/ 27 сентября 2019

Вы можете выполнить следующие действия:

Option Explicit

Sub test()

    Dim str As String

    'Get the value of the cell using Tab name
    str = ThisWorkbook.Worksheets("data").Range("A1").Value

    'Get the value of the cell using Code name
    str = data.Range("A10").Value

End Sub

enter image description here

0 голосов
/ 27 сентября 2019

Почему бы вам не сделать:

Dim MySheet As worksheet

Set MySheet = ThisWorkbook.Sheets(1)

Cells(rij, "K") = MySheet.Cells(1, "F")

Cells(rij, "I") = MySheet.Cells(rij, "K")
0 голосов
/ 27 сентября 2019

Если вы объявите и зададите «данные», это будет работать:

Dim data As Worksheet

Set data = Sheets("data")

Cells(rij, "I") = data.Cells(1, "F")

Редактировать:

Если у вас есть 1 лист, вы можете легко перейти с:

Dim data As Worksheet

Set data = ThisWorkbook.Sheets(1)

Cells(rij, "I") = data.Cells(1, "F")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...