Private Sub ExportReport(ByVal dr As SqlDataReader, ByVal Header As String) Try Dim dg As New DataGrid() Dim dtSchema As DataTable = dr.GetSchemaTable() Dim dt As DataTable = New DataTable() ' You can also use an ArrayList instead of List<> Dim listCols As List(Of DataColumn) = New List(Of DataColumn)() Dim Count As Integer = 0 If Not dtSchema Is Nothing Then For Each drow As DataRow In dtSchema.Rows If Count < dtSchema.Rows.Count - 3 Then Dim columnName As String = System.Convert.ToString(drow("ColumnName")) Dim column As DataColumn = New DataColumn(columnName) listCols.Add(column) dt.Columns.Add(column) Else Exit For End If Count += 1 Next drow End If ' Read rows from DataReader and populate the DataTable Do While dr.Read() Dim dataRow As DataRow = dt.NewRow() For i As Integer = 0 To listCols.Count - 1 dataRow((CType(listCols(i), DataColumn))) = dr(i) Next i dt.Rows.Add(dataRow) Loop Dim dsExport As New DataSet() Dim tw As New System.IO.StringWriter() Dim hw As New System.Web.UI.HtmlTextWriter(tw) Dim dgGrid As New DataGrid() dgGrid.DataSource = dt ' hw.WriteLine(Request.MapPath(".")) 'Report Header 'hw.WriteLine("<b>" & Header & "</b>") 'hw.WriteLine("<br />") 'hw.WriteLine(JobTitle) 'hw.WriteLine("<br />") 'hw.WriteLine("<b>Posted On :</b> " & PostedOn) hw.WriteLine(" ") hw.WriteLine(" ") hw.WriteLine(" ") hw.WriteLine(" ") hw.WriteLine(" ") hw.WriteLine(" ") hw.WriteLine(" ") hw.WriteLine("<b><font size='5'> " & Header & " </font></b>") hw.WriteBreak() hw.WriteBreak() ' Get the HTML for the control. dgGrid.HeaderStyle.Font.Bold = True dgGrid.HeaderStyle.ForeColor = Drawing.Color.White dgGrid.HeaderStyle.BackColor = System.Drawing.ColorTranslator.FromHtml("#7d6221") dgGrid.HeaderStyle.CssClass = "fixed" dgGrid.HeaderStyle.HorizontalAlign = HorizontalAlign.Center dgGrid.HeaderStyle.Height = Unit.Pixel(100) dgGrid.HeaderStyle.VerticalAlign = VerticalAlign.Top dgGrid.HeaderStyle.HorizontalAlign = HorizontalAlign.Left dgGrid.ItemStyle.VerticalAlign = VerticalAlign.Top dgGrid.ItemStyle.HorizontalAlign = HorizontalAlign.Left dgGrid.DataBind() dgGrid.RenderControl(hw) Dim strPath As String = Server.MapPath("~") & "\PDFFile\" Dim dir As New System.IO.DirectoryInfo(strPath) Dim ArrayFile As Array = dir.GetFiles() 'Dim dt1 As DateTime = DateTime.UtcNow 'Dim dt2 As DateTime = Now 'Dim t As TimeSpan = dt1 - dt2 'For Each File1 In ArrayFile ' If File1.CreationTime < Now.AddMinutes(-5) Then ' System.IO.File.Delete(File1.fullname) ' End If 'Next Dim style As String = "<style>.textmode{mso-number-format:\@;}</style>" Dim Path As String = "Tanker Position Report" & ".xls" Dim str As String = strPath & Path ' System.IO.File.WriteAllText(strPath & Path, style & tw.ToString()) System.IO.File.WriteAllText(str, style & tw.ToString()) Response.Clear() Response.Write(tw.ToString()) Response.End() Catch ex As Exception Throw ex End Try End Sub
'Place the path of the file in file variable Dim file As String = "C:\test.xls" 'This will open the file if file exists If System.IO.File.Exists(file) Then System.Diagnostics.Process.Start(file) End If
System.Diagnostics.Process.Start("path of excel file with extension");
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)