новичок в VBA, копируя данные с одного листа и публикуя их в другом, пользователь выбирает исходный файл, а затем копирует данные с листа и публикует их в файле назначения, где значения данных в исходном файле не остаются тот же размер
Я пытался создать другую переменную для хранения данных рабочего листа, но это было безуспешно, и он также сказал, что ошибка была в том, что некоторые значения данных были защищены, когда я отлаживал их, но я разблокировал листы и все еще получаю ту же ошибку
Private Sub CommandButton1_Click()
Dim source As Workbook
Dim sht1 As Worksheet
Dim destination As Workbook
Dim sht2 As Worksheet
Dim tmp As String
Dim startCell As Range
Dim lastRow As Long
Dim lastColumn As Long
setFile = Application.GetOpenFilename 'used to open the browser window
tmp = setFile 'store the selected file in variable tmp
Application.ScreenUpdating = False 'preventing long runtimes
If Dir(tmp) <> "" Then
Set source = ThisWorkbook 'workbook b1 is declared as the current worksheet opened
Set destination = Workbooks.Open(tmp) 'the file the user selected is opened in excel
Set sht1 = destination.Sheets("L1 OVERVIEW")
Set sht2 = source.Sheets("Overview Paste")
Set startCell = Range("D5")
sht1.Activate
'find last rown and last column
lastRow = sht1.Cells(sht1.Rows.Count, startCell.Column).End(xlUp).Row
lastColumn = sht1.Cells(startCell.Row, sht1.Columns.Count).End(xlToLeft).Column
sht1.Range(startCell, Cells(lastRow, lastColumn)).Select 'select range
sht1.Copy 'copy all the data in selected sheet
sht2.Range("D5").PasteSpecial xlPasteAll
Application.CutCopyMode = False
destination.Close True
Else 'used to prevent a error message from popping up when the user choose to cancel selecting a file
End If
End Sub
Я ожидаю, что данные будут автоматизированы, когда они копируют данные из исходной рабочей таблицы и вставляют ее в конечную рабочую таблицу, в которой все вычисления и ячейки расположены в том же порядке, что и значения, из которых они были скопированы. который я мог бы использовать для моделирования