Как из программы создать книгу Excel - VB

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

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

Помогите разобраться как из программы создавать файлы книг ЭксЭля. Очень надо. Заранее спасибо...

Решение задачи: «Как из программы создать книгу Excel»

textual
Листинг программы
  1. 'создаеш 1 textbox (caption=Text1) и 3 CommandButton
  2. '(bttnNew, bttnCalculate, bttnExit
  3.  
  4. Dim AppExcel As Excel.Application
  5.  
  6. Private Sub bttnNew_Click()
  7.     StartExcel
  8.     MakeSheet
  9.  
  10.     AppExcel.Range('A2:E3').Select
  11.    Set CData = AppExcel.Selection
  12.     For icol = 1 To 5
  13.         For irow = 1 To 2
  14.             Text1.Text = Text1.Text & Chr(9) & CData(irow, icol)
  15.         Next
  16.         Text1.Text = Text1.Text & vbCrLf
  17.     Next
  18.        
  19.     PrintSheet
  20.     SaveSheet
  21.     TerminateExcel
  22. End Sub
  23.  
  24. Sub StartExcel()
  25.     Screen.MousePointer = vbHourglass
  26.     Set AppExcel = CreateObject('Excel.Application')
  27.    Screen.MousePointer = vbDefault
  28. End Sub
  29.  
  30. Sub MakeSheet()
  31. Dim wSheet As Worksheet
  32. Dim wBook As Workbook
  33.  
  34.     Set wBook = AppExcel.Workbooks.Add
  35.     Set wSheet = AppExcel.Sheets(1)
  36.     wSheet.Cells(2, 1).Value = '1st Quarter'
  37.    wSheet.Cells(2, 2).Value = '2nd Quarter'
  38.    wSheet.Cells(2, 3).Value = '3rd Quarter'
  39.    wSheet.Cells(2, 4).Value = '4th Quarter'
  40.    wSheet.Cells(2, 5).Value = 'Year Total'
  41.    
  42.     wSheet.Cells(3, 1).Value = 123.45
  43.     wSheet.Cells(3, 2).Value = 435.56
  44.     wSheet.Cells(3, 3).Value = 376.25
  45.     wSheet.Cells(3, 4).Value = 425.75
  46.  
  47. ' Format column Headings
  48.    Range('A2:E2').Select
  49.    With Selection.Font
  50.         .Name = 'Verdana'
  51.        .FontStyle = 'Bold'
  52.        .Size = 12
  53.     End With
  54.     Range('A2:E2').Select
  55.    Selection.Columns.AutoFit
  56.     Selection.ColumnWidth = Selection.ColumnWidth * 1.25
  57.     Range('A2:E2').Select
  58.    With Selection
  59.         .HorizontalAlignment = xlCenter
  60.     End With
  61. ' Format numbers
  62.    Range('A3:E3').Select
  63.    With Selection.Font
  64.         .Name = 'Verdana'
  65.        .FontStyle = 'Regular'
  66.        .Size = 11
  67.     End With
  68.     wSheet.Cells(3, 5).Value = '=Sum(A3:D3)'
  69.    MsgBox 'The year total is ' & wSheet.Cells(3, 5).Value
  70.  
  71. End Sub
  72.  
  73. Sub SaveSheet()
  74.     AppExcel.AlertBeforeOverwriting = False
  75. On Error Resume Next
  76.     AppExcel.Sheets(1).SaveAs FileName:='c:sales.xls'
  77. End Sub
  78.  
  79. Sub PrintSheet()
  80.     AppExcel.ActiveWorkbook.PrintOut
  81. End Sub
  82.  
  83. Sub TerminateExcel()
  84.     AppExcel.ActiveWorkbook.Close False
  85.     AppExcel.Quit
  86.     Set AppExcel = Nothing
  87. End Sub
  88.  
  89. Private Sub bttnExit_Click()
  90.     End
  91. End Sub
  92.  
  93. Private Sub bttnCalculate_Click()
  94. Dim wSheet As Worksheet
  95. Dim wBook As Workbook
  96. Dim expression
  97.    
  98.     StartExcel
  99.     expression = InputBox('Enter math expression to evaluate (i.e., 1/cos(3.45)*log(19.004)')
  100. On Error GoTo CalcError
  101.     If Trim(expression) <> '' Then
  102.        MsgBox AppExcel.Evaluate(expression)
  103.     End If
  104.     GoTo Terminate
  105.     Exit Sub
  106.  
  107. CalcError:
  108.     MsgBox 'Excel returned the following error: ' & vbCrLf & Err.Description
  109. Terminate:
  110.     AppExcel.Quit
  111.     Set AppExcel = Nothing
  112. End Sub
  113.  
  114. Private Sub Form_Terminate()
  115.     Set AppExcel = Nothing
  116. End Sub

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


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

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

15   голосов , оценка 3.867 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы