Возникли проблемы с передачей переменной во вспомогательный поиск - ошибка выполнения '91' - PullRequest
0 голосов
/ 18 февраля 2020

Я пытаюсь, чтобы мой код запустил поиск строки «Номер детали» в ячейке, а затем скопировал весь этот столбец. У меня есть код, работающий, когда я запускаю его без передачи строки и замены переменной, однако, когда я пытаюсь сделать это со строкой, переданной как colName, я получаю сообщение об ошибке 'Set r = ActiveSheet.Range (c .Address) line. '

Вот основная функция

Public Sub PreSE()

Dim SECopy As Workbook, BOM As Workbook: Set BOM = ActiveWorkbook
Dim fname As String, fPathFile As String
Dim BOMsheet As Worksheet: Set BOMsheet = ActiveSheet


fname = InputBox("Enter the file name to use, including file extension exactly as in the next window.")
Set SECopy = Workbooks.Add
fPathFile = Application.GetSaveAsFilename(fname, "Excel Files (*.xlsx), *.xlsx")
SECopy.SaveAs fPathFile

Call FindSelCol("Part Number", BOM, SECopy, fname)
'Call FindSelCol("Manufacturer Part Number", BOM, fname)
'Call FindSelCol("Cage Code", BOM, fname)
'Call FindSelCol("Description", BOM, fname)

End Sub

и подпрограмма для поиска и выбора столбца

Sub FindSelCol(colName As String, BOM As Workbook, SECopy As Workbook, UpCopy As String)

'Currently - selects column in first passed workbook with the header passed as a string
'WIP - trying to get it to copy that header into SECopy workbook

Dim c As Variant

BOM.Activate

With ActiveSheet.UsedRange
    Set c = .find(colName, LookIn:=xlValues)
    If Not c Is Nothing Then
        ActiveSheet.Range(c.Address).Offset(1, 0).Copy
        ActiveSheet.Range(c, ActiveSheet.Cells(Rows.Count, c.Column).End(xlUp).Address).Copy
    End If
End With

'Paste into SECopy Book first sheet; Passed in, paste into first unoccupied column
If SECopy.Worksheets(1).Range("A1") = "" Then
SECopy.Workshets(1).Cells(1, 0).PasteSpecial xlPasteValues
Else
SECopy.Worksheets(1).Cells(1, Columns.Count).End(xlToLeft).Offset(0, 1).PasteSpecial xlPasteValues
End If

End Sub

Есть дополнительный код для что-то еще, что я пытаюсь добавить, поэтому я задам еще один вопрос для этой части.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...