Imports System.String
Imports Microsoft.Office.Interop
Imports Microsoft.Office.Interop.Excel
Public Class imprimir_mes
Public archivo As String = "D:\Documentos\Escaneados\Informe_medico_infarto_2019\Tensión\Historico tension.xlsx"
Public archivo_ltl As String = "D:\Documentos\Escaneados\Informe_medico_infarto_2019\Tensión\Historico tension mes.xlsx"
Public exApp As New Microsoft.Office.Interop.Excel.Application
Public exLibro As Workbook
Public exHoja As Worksheet
Public Aplicacion As Excel.Application
Private Sub MonthCalendar1_DateSelected(sender As Object, e As DateRangeEventArgs) Handles MonthCalendar1.DateSelected
System.IO.File.OpenRead(archivo)
exHoja = exLibro.Worksheets("Histórico tensión") 'AQUÍ ES DONDE ME DA EL ERROR
exApp.Visible = True
Try
exLibro = exApp.Workbooks.Add
exHoja = exApp.Sheets(1)
fecha_tb.Text = Format(CStr(Me.MonthCalendar1.SelectionRange.Start), "Short Date")
Dim celda As Excel.XlCellType
Dim rango As Excel.XlRangeValueDataType
Dim busca As Object
Dim dia As String = fecha_tb.Text
rango = exHoja.Cells((2, 1), exHoja.Cells(exHoja.UsedRange.Rows.Count))
busca = exHoja.Range(rango).Find(dia)
celda = busca
Dim objRango As Excel.Range = exHoja.Range(exHoja.UsedRange.Cells.Value = (celda), exHoja.Cells(exHoja.UsedRange.Rows.Count, exHoja.UsedRange.Columns.Count))
exHoja.PageSetup.PrintTitleRows = exHoja.Rows(1).Address 'PONEMOS LA FILA DE ENCABEZADO EN TODAS LAS HOJAS IMPRESAS
exHoja.PageSetup.PaperSize = Excel.XlPaperSize.xlPaperA4 'TAMAÑO DE PAPEL A4
exHoja.Name = "Tensión mes"
exHoja.Rows.Item(1).Font.Bold = 1 'NEGRITA
exHoja.Rows.Item(1).Font.ColorIndex = 49 'COLOR DEL ENCABEZADO
exHoja.Rows.Item(1).HorizontalAlignment = 3 'ALINEADO DEL ENCABEZADO
objRango.HorizontalAlignment = 3 'ALINEADO DE LAS COLUMNAS
exHoja.Range("A1").Value = " FECHA "
exHoja.Range("B1").Value = " SISTÓLICA "
exHoja.Range("C1").Value = " DIASTÓLICA "
exHoja.Range("D1").Value = " PULSACIONES "
exHoja.Range("E1").Value = " SATURACIÓN "
exHoja.Range("A1:E1").Cells.Interior.Color = Color.Cyan
objRango.Borders.LineStyle = 1 'BORDES DE LA HOJA
exHoja.Rows.Font.Size = 12 ' TAMAÑO DE LA FUENTE
exHoja.Rows.Font.Name = "Adobe Garamond Pro Bold" 'TIPO DE FUENTE
exHoja.Columns.AutoFit() 'AJUSTE DE LAS COLUMNAS
exHoja.Range("A2:A1048576").Font.ColorIndex = 5 'COLOR DE LA FUENTE DE LA COLUMNA DE FECHAS
'COMPROBAMOS SI EXISTE EL FICHERO Y LO SOBRESCRIBIMOS SI ES ASÍ
'MOSTRAMOS EL MESSAGE BOX
Dim Message As String = "¿GUARDAR EL MES SELECCIONADO?"
Dim Caption As String = "OPCIÓN DE GUARDAR"
Dim Buttons As MessageBoxButtons = MessageBoxButtons.YesNo
Dim Result As DialogResult
Result = MessageBox.Show(Message, Caption, Buttons)
exApp.ActiveWindow.WindowState = Excel.XlWindowState.xlMaximized
'RESULTADO DE LA OPCIÓN AFIRMATIVA
If Result = System.Windows.Forms.DialogResult.Yes Then
If System.IO.File.Exists(archivo_ltl) = True Then
'SI EL ARCHIVO EXISTE LO BORRAMOS Y GUARDAMOS EL NUEVO
System.IO.File.Delete(archivo_ltl)
exLibro.SaveAs(archivo_ltl)
Else
'SI NO EXISTE LO GUARDAMOS
exLibro.SaveAs(archivo_ltl)
End If
Else
System.IO.File.OpenRead(archivo_ltl)
End If
exApp.Application.Visible = True
exHoja = Nothing
exLibro = Nothing
exApp = Nothing
Catch ex As Exception
MessageBox.Show(ex.Message, "ERROR AL EXPORTAR A EXCEL", MessageBoxButtons.OK, MessageBoxIcon.Information)
End Try
End Sub