Скопировать ячейку на другой лист - PullRequest
0 голосов
/ 13 апреля 2020

Я новичок в этом коде VBA, и у меня возникли небольшие проблемы с ID оборудования, поэтому я очень признателен за вашу помощь.

Ниже моей проблемы:

Когда я создаю новое оборудование, я хочу добавить идентификатор оборудования вручную, так как в идентификаторе есть буква, которая зависит от местоположения. Например, F002. Этот идентификатор оборудования и вся его информация будут автоматически сохранены в первой доступной строке инвентаря оборудования (лист 2). Но каждый раз, когда я набираю, например, D100, в Менеджере экипировки выдается пустое значение, а в Инвентаризации оборудования - «0».

Это код:

Sub Equip_SaveNew()
    Dim EquipRow As Long
    Dim EquipCol As Long

    With Sheet1
        If .Range("E5").Value = Empty Then
            MsgBox "Por favor introduza o Nome do Artigo"
            .Range("E5").Select
            Exit Sub
        End If

        EquipRow = Sheet2.Range("A99999").End(xlUp).Row + 1   'First Avail Row. 
        Sheet2.Range("A" & EquipRow).Value = Application.WorksheetFunction.Max(Sheet2.Range("EquipID"))

        For EquipCol = 2 To 11
            Sheet2.Cells(EquipRow, EquipCol).Value = .Range(Sheet2.Cells(1, EquipCol).Value).Value
        Next EquipCol

        .Range("E2").Value = .Range("E5").Value 'Add Equipment Name
        .Shapes("NewEquipGrp").Visible = msoFalse
        .Shapes("ExistEquipGrp").Visible = msoCTrue
        .Range("B1").Value = False 'Set Equipment Load To False
        .Range("B4").Value = False 'Set New Equipment To False
    End With

    'Sort Equipment List
     With Sheet2 
        .Sort.SortFields.Clear
        .Sort.SortFields.Add Key:=.Range("B2"), SortOn:=xlSortOnValues, Order:=xlAscending,                    DataOption:=xlSortNormal
        With .Sort
            .SetRange Range("A4:K" & EquipRow)
            .Apply
        End With
    End With
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...