Набрать самые лучшие (ценные) в некий Рюкзак, с ограничением по полному весу - VB

Узнай цену своей работы

Формулировка задачи:

Здравствуйте!

Прошу помощи. Встретил интересную задачу с решением. К сожалению, она на Excel (VBA)— мне нравится меньше, чем VB6. Суть задачи. Есть перечень предметов, имеющих два параметра: вес и стоимость. Надо набрать самые лучшие (ценные) в некий Рюкзак, с ограничением по полному весу не более 10000 грамм (10 кг). Возникло много вопросов и мороки. Как избежать канцелярской работы в виде рутины? Например, можно ли ввести все исходные данные как-нибудь готовым списком? Как быть с Формой, тоже много мороки? Пока всё поделил на три этапа: 1) исходные данные задачи;
2) код для решения задачи; —

требуется внести изменения под код VB6

3) результат по задаче.

Решение задачи: «Набрать самые лучшие (ценные) в некий Рюкзак, с ограничением по полному весу»

textual
Листинг программы
Option Explicit
 
'Казанский (09.03.2015, 23:22) События Excel можно обрабатывать в VB6, VBA собственно не нужен
'Создайте форму с кнопкой, в Project - References
'подключите библиотеку Microsoft Excel xx.x Object Library
'попробуйте такой код
 
 Dim WithEvents xlApp As Excel.Application
Dim xlWb As Excel.Workbook
 
Private Sub Command1_Click()
  Set xlApp = New Excel.Application
  Set xlWb = xlApp.Workbooks.Open("c:\temp\Лист1.xls") '==== путь к книге
  xlApp.Visible = True
End Sub
 
Private Sub Form_Unload(Cancel As Integer)
  On Error Resume Next
  xlApp.Quit
End Sub
 
Private Sub xlApp_WorkbookBeforeClose(ByVal wb As Excel.Workbook, Cancel As Boolean)
  If wb Is xlWb Then
    xlApp.Visible = False
    If MsgBox("VB6 - Вы уверены, что хотите закрыть книгу?", vbYesNo) = vbNo Then
      Cancel = True
      MsgBox "VB6 - ОК, продолжаем"
      xlApp.Visible = True
      Exit Sub
    Else
      xlApp.EnableEvents = False
      wb.Close True 'закрыть с сохранением
      xlApp.Quit
    End If
  End If
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.6 из 5
Похожие ответы