86 lines
2.9 KiB
QBasic
86 lines
2.9 KiB
QBasic
Attribute VB_Name = "Module5"
|
|
Sub Button5_Click()
|
|
Dim varArrayList() As Variant
|
|
Dim strSelected As String
|
|
|
|
Set cwb = ActiveWorkbook
|
|
Set summarySheet = cwb.Worksheets("SUMMARY")
|
|
Set secinfoSheet = cwb.Worksheets("SECURITIES INFO")
|
|
Set dataSheet = cwb.Worksheets("INPUTS")
|
|
Set fundingSheet = cwb.Worksheets("FUNDING")
|
|
Set controlSheet = cwb.Worksheets("control")
|
|
|
|
local_date_format = controlSheet.Range("DT_FORM_EX").NumberFormat
|
|
sum_lr = summarySheet.Cells(summarySheet.Rows.Count, 1).End(xlUp).Row - 2
|
|
|
|
varArrayList = summarySheet.Range("a15:a" & sum_lr).Value
|
|
'varArrayList = Array("Sel1", "Sel2", "Sel3")
|
|
strSelected = SelectionBoxSingle(varArrayList, "Выберите бумагу, по которой был начислен купон")
|
|
|
|
End Sub
|
|
|
|
Public Function SelectionBoxSingle(List As Variant, Optional Prompt As String, Optional Title As String) As String
|
|
Dim varReturnList As Variant
|
|
varReturnList = SelectionBoxMulti(List:=List, Prompt:=Prompt, SelectionType:=fmMultiSelectSingle, Title:=Title)
|
|
|
|
If Not IsEmpty(varReturnList) Then
|
|
If Not Len(Join(varReturnList, "")) = 0 Then
|
|
SelectionBoxSingle = varReturnList(UBound(varReturnList))
|
|
End If
|
|
End If
|
|
|
|
End Function
|
|
|
|
Public Function SelectionBoxMulti(List As Variant, Optional Prompt As String, Optional SelectionType As MSForms.fmMultiSelect = fmMultiSelectMulti, Optional Title As String) As Variant
|
|
Dim SelectedValues() As Variant
|
|
With FormSelectionBox
|
|
If Len(Title) > 0 Then .Caption = Title
|
|
|
|
.FillList List
|
|
.Prompt = Prompt
|
|
.ListBox.MultiSelect = SelectionType
|
|
.Show
|
|
|
|
If Not .IsCancelled Then
|
|
Dim i As Integer, j As Integer
|
|
With .ListBox
|
|
For i = 0 To .ListCount - 1
|
|
If .Selected(i) Then
|
|
ReDim Preserve SelectedValues(j)
|
|
SelectedValues(j) = .List(i)
|
|
j = j + 1
|
|
End If
|
|
Next i
|
|
End With
|
|
SelectionBoxMulti = SelectedValues
|
|
End If
|
|
End With
|
|
Unload FormSelectionBox
|
|
End Function
|
|
|
|
|
|
|
|
Sub Refresh_list()
|
|
Attribute Refresh_list.VB_ProcData.VB_Invoke_Func = " \n14"
|
|
Set cwb = ActiveWorkbook
|
|
Set summarySheet = cwb.Worksheets("SUMMARY")
|
|
sum_lr = summarySheet.Cells(summarySheet.Rows.Count, 1).End(xlUp).Row - 2
|
|
sum_fr = summarySheet.Range("SUM_F_ROW").Row
|
|
summarySheet.Rows(sum_fr & ":" & sum_lr).AutoFilter
|
|
|
|
summarySheet.AutoFilter.Sort.SortFields.Clear
|
|
summarySheet.AutoFilter.Sort.SortFields.Add Key:= _
|
|
Range("H14:H" & sum_lr), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption _
|
|
:=xlSortNormal
|
|
|
|
With summarySheet.AutoFilter.Sort
|
|
.Header = xlYes
|
|
.MatchCase = False
|
|
.Orientation = xlTopToBottom
|
|
.SortMethod = xlPinYin
|
|
.Apply
|
|
End With
|
|
Selection.AutoFilter
|
|
|
|
End Sub
|