Próbuję przenieść niektóre dane z jednego skoroszytu do drugiego, przypisując wartości z jednego zakresu do drugiego. Kiedy używam składni Normalny zakres, aby określić zakres docelowy (Zakres ("A1: B2")) mój kod działa, ale jeśli spróbuję użyć składni Zakres, Komórki (Zakres (Komórki (1,1), Komórki (2 , 2))) mój kod nie działa.Dlaczego zasięg działa, ale nie komórki?
Uaktywniam skoroszyt docelowy (ActiveWorkbook) i uruchamiam kod w skoroszycie źródłowym (ThisWorkbook).
Ten kod działa:
ActiveWorkbook.Worksheets(1).Range("A1:B2").Value _
= ThisWorkbook.Worksheets(1).Range(Cells(1, 1), Cells(2, 2)).Value
ale ten kod nie działa:
ActiveWorkbook.Worksheets(1).Range(Cells(1, 1), Cells(2, 2)).Value _
= ThisWorkbook.Worksheets(1).Range(Cells(1, 1), Cells(2, 2)).Value
Błąd pojawia się błąd czasu wykonywania „1004”: Applicaton zdefiniowane lub przedmiot zdefiniowane błąd.
Czy ktoś wie, dlaczego korzystanie z obiektu komórki powoduje problemy, lub jeśli jest jakiś inny problem, którego nie jestem świadomy?
Ta odpowiedź jest właściwa i powinna zostać oznaczona jako tak. – dnLL
nie trzeba kwalifikować zakresu w instrukcji 'shDest.Range (shDest.Cells (1, 1), shDest.Cells (2, 2)). Wartość = _ shSource.Range (shSource.Cells (1, 1) , shSource.Cells (2, 2)). Wartość 'this is correct 'Range (shDest.Cells (1, 1), shDest.Cells (2, 2)) Wartość = _ Range (shSource.Cells (1 , 1), shSource.Cells (2, 2)). Wartość " – h2so4