biologisttryingtocode Ответов: 1

1004 : ошибка определения приложения или объекта


Привет. Я пытаюсь написать макрос (впервые в истории) для перемещения данных с одного листа на другой в excel, чтобы я мог заполнить таблицу.

Пока что это мой макрос. Когда я пытаюсь запустить его, он говорит мне: "ошибка 1004: ошибка определения приложения или объекта" что я делаю не так?

'
' Movedata Macro
'
Sub SubMoveData()

'
    Dim SrcSht       As Worksheet
    Dim DestSht      As Worksheet
    Dim lngDestLrow  As Long
    
    'Define Worksheets
    Set SrcSht = Sheets("Measures Worksheet")
    Set DestSht = Sheets("RS - Measures Data Compiled")
    
    'Define Destination Sheet Lrow
    lngDestLrow = DestSht.Cells(Rows.Count, "B7").End(xlUp).Row
    
    'Move Data
    DestSht.Cells(lngDestLrow + 1, "B7") = SrcSht.Range("C14") 'Enter the form Field B7 on the next available row
    DestSht.Cells(lngDestLrow + 1, "C7") = SrcSht.Range("K14") 'Enter the form Field C7 on the next available row
    DestSht.Cells(lngDestLrow + 1, "D7") = SrcSht.Range("L14") 'Enter the form Field D7 on the next available row
    DestSht.Cells(lngDestLrow + 1, "E7") = SrcSht.Range("M14") 'Enter the form Field E7 on the next available row
   
        
End Sub


Что я уже пробовал:

Я пытался изменить информацию в
lngDestLrow = DestSht.Cells(Rows.Count, "B7").End(xlUp).Row
но ничего не получается.

ZurdoDev

Понятия не имею, в чем проблема. Как бы мы это сделали? Вы не сказали нам, какая строка кода вызывает ошибку. Ошибка, которую вы получили, является общей.

biologisttryingtocode

Моя вина. Он говорит мне, что эта строка вызывает ошибку: lngDestLrow = DestSht.Cells(Rows.Count, "B7").End(xlUp).Row

он подсвечивается всякий раз, когда я пытаюсь запустить код

Richard MacCutchan

Я не думаю, что это так. Rows объект имеет свойство называемое Count.

biologisttryingtocode

Это - это работало в прошлом. Есть ли у вас какие-либо предложения по устранению этой проблемы?

1 Ответов

Рейтинг:
1

Maciej Los

Попробуйте это изменить:

lngDestLrow = DestSht.Cells(Rows.Count, "B7").End(xlUp).Row

до настоящего времени:
lngDestLrow = DestSht.Range("B" & Rows.Count).End(xlUp).Row + 1


Измените код соответственно этой части:
'Move Data
'DestSht.Cells(lngDestLrow + 1, "B7") = SrcSht.Range("C14") 'Enter the form Field B7 on the next available row
DestSht.Range("B" & lngDestLrow) = SrcSht.Range("C14") 'Enter the form Field B7 on the next available row
'and so on....


Дай мне знать, если это поможет.