diff --git a/Master Template.xlsm_EXPORTS/Utils.bas b/Master Template.xlsm_EXPORTS/Utils.bas index 4cc22f3..f872ee3 100644 --- a/Master Template.xlsm_EXPORTS/Utils.bas +++ b/Master Template.xlsm_EXPORTS/Utils.bas @@ -617,4 +617,28 @@ Public Function IntersectsWith(Range1 As Range, Range2 As Range) As Boolean IntersectsWith = Not Application.Intersect(Range1, Range2) Is Nothing End Function +' Credit: https://stackoverflow.com/a/64563408/510067 +Public Function RangeToArray(inputRange As Range) As Variant() + Dim size As Integer + Dim inputValue As Variant, outputArray() As Variant + + ' inputValue will either be an variant array for ranges with more than 1 cell + ' or a single variant value for range will only 1 cell + inputValue = inputRange + + On Error Resume Next + size = UBound(inputValue) + + If Err.Number = 0 Then + RangeToArray = inputValue + Else + On Error GoTo 0 + ReDim outputArray(1 To 1, 1 To 1) + outputArray(1, 1) = inputValue + RangeToArray = outputArray + End If + + On Error GoTo 0 + +End Function diff --git a/Master Template.xlsm_EXPORTS/build.frm b/Master Template.xlsm_EXPORTS/build.frm index 3affa42..0107139 100644 --- a/Master Template.xlsm_EXPORTS/build.frm +++ b/Master Template.xlsm_EXPORTS/build.frm @@ -28,11 +28,11 @@ Private Sub cmdOK_Click() End Sub Public Sub Initialize(part As String, billTo As String, shipTo As String) - cbPart.list = shSupportingData.ListObjects("ITEM").DataBodyRange.Value + cbPart.list = RangeToArray(shSupportingData.ListObjects("ITEM").DataBodyRange) cbPart.Value = part - cbBill.list = shSupportingData.ListObjects("CUSTOMER").DataBodyRange.Value + cbBill.list = RangeToArray(shSupportingData.ListObjects("CUSTOMER").DataBodyRange) cbBill.Value = billTo - cbShip.list = shSupportingData.ListObjects("CUSTOMER").DataBodyRange.Value + cbShip.list = RangeToArray(shSupportingData.ListObjects("CUSTOMER").DataBodyRange) cbShip.Value = shipTo useval = False diff --git a/Master Template.xlsm_EXPORTS/build.frx b/Master Template.xlsm_EXPORTS/build.frx index 614b17d..e43441c 100644 Binary files a/Master Template.xlsm_EXPORTS/build.frx and b/Master Template.xlsm_EXPORTS/build.frx differ diff --git a/Master Template.xlsm_EXPORTS/changes.frx b/Master Template.xlsm_EXPORTS/changes.frx index 35e8278..ae9bcea 100644 Binary files a/Master Template.xlsm_EXPORTS/changes.frx and b/Master Template.xlsm_EXPORTS/changes.frx differ diff --git a/Master Template.xlsm_EXPORTS/fpvt.frm b/Master Template.xlsm_EXPORTS/fpvt.frm index 0c4946f..1b30dc1 100644 --- a/Master Template.xlsm_EXPORTS/fpvt.frm +++ b/Master Template.xlsm_EXPORTS/fpvt.frm @@ -315,8 +315,11 @@ Private Sub UserForm_Activate() Next i '-------------load tags------------------------------- - cbTAG.list = shConfig.ListObjects("TAGS").DataBodyRange.Value - + cbTAG.list = RangeToArray(shConfig.ListObjects("TAGS").DataBodyRange) + If cbTAG.ListCount = 1 Then + cbTAG.ListIndex = 0 + End If + '----------reset spinner buttons---------------------- sbpv.Value = 0 sbpp.Value = 0 diff --git a/Master Template.xlsm_EXPORTS/fpvt.frx b/Master Template.xlsm_EXPORTS/fpvt.frx index 1ac76e7..26f2dfb 100644 Binary files a/Master Template.xlsm_EXPORTS/fpvt.frx and b/Master Template.xlsm_EXPORTS/fpvt.frx differ diff --git a/Master Template.xlsm_EXPORTS/openf.frm b/Master Template.xlsm_EXPORTS/openf.frm index fe4676e..5a0073d 100644 --- a/Master Template.xlsm_EXPORTS/openf.frm +++ b/Master Template.xlsm_EXPORTS/openf.frm @@ -55,9 +55,9 @@ End Sub Private Sub UserForm_Activate() handler.server = shConfig.Range("server").Value - cbDSM.list = shSupportingData.ListObjects("DSM").DataBodyRange.Value - cbDirector.list = shConfig.ListObjects("DIRECTORS").DataBodyRange.Value - cbSegment.list = shConfig.ListObjects("SEGMENTS").DataBodyRange.Value + cbDSM.list = RangeToArray(shSupportingData.ListObjects("DSM").DataBodyRange) + cbDirector.list = RangeToArray(shConfig.ListObjects("DIRECTORS").DataBodyRange) + cbSegment.list = RangeToArray(shConfig.ListObjects("SEGMENTS").DataBodyRange) End Sub diff --git a/Master Template.xlsm_EXPORTS/openf.frx b/Master Template.xlsm_EXPORTS/openf.frx index 675589f..fa71990 100644 Binary files a/Master Template.xlsm_EXPORTS/openf.frx and b/Master Template.xlsm_EXPORTS/openf.frx differ diff --git a/Master Template.xlsm_EXPORTS/part.frm b/Master Template.xlsm_EXPORTS/part.frm index f73ae0c..a50a15c 100644 --- a/Master Template.xlsm_EXPORTS/part.frm +++ b/Master Template.xlsm_EXPORTS/part.frm @@ -29,7 +29,7 @@ End Sub Private Sub UserForm_Activate() useval = False - cbPart.list = shSupportingData.ListObjects("ITEM").DataBodyRange.Value + cbPart.list = RangeToArray(shSupportingData.ListObjects("ITEM").DataBodyRange) End Sub diff --git a/Master Template.xlsm_EXPORTS/part.frx b/Master Template.xlsm_EXPORTS/part.frx index ab288a0..f42dc4a 100644 Binary files a/Master Template.xlsm_EXPORTS/part.frx and b/Master Template.xlsm_EXPORTS/part.frx differ