Я новичок в этом коде 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