Quantcast
Channel: VBForums - Visual Basic 6 and Earlier
Viewing all articles
Browse latest Browse all 21238

Designing/Formatting Excel during exporting Data from vb6 application.

$
0
0
Im using this code to export data from my vb6 application to excel. Is it possible to apply color formatting in the cell/columns of the worksheet where my
data will be exported?
Code:

Private Sub FlexToExcel()
Dim xlObject    As Excel.Application
Dim xlWB        As Excel.Workbook
       
    Set xlObject = New Excel.Application
 
    'This Adds a new woorkbook, you could open the workbook from file also
    Set xlWB = xlObject.Workbooks.Add
               
    Clipboard.Clear 'Clear the Clipboard
    With MSFlexGrid1
        'Select Full Contents (You could also select partial content)
        .Col = 0              'From first column
        .Row = 0              'From first Row (header)
        .ColSel = .Cols - 1    'Select all columns
        .RowSel = .Rows - 1    'Select all rows
        Clipboard.SetText .Clip 'Send to Clipboard
    End With
           
    With xlObject.ActiveWorkbook.ActiveSheet
        .Range("A1").Select 'Select Cell A1 (will paste from here, to different cells)
        .Paste              'Paste clipboard contents
    End With
   
    ' This makes Excel visible
    xlObject.Visible = True
End Sub
Excel To Flexgrid Example:
VB Code:
Private Sub ExcelToFlexgrid()
Dim xlObject    As Excel.Application
Dim xlWB        As Excel.Workbook
       
    Set xlObject = New Excel.Application
    Set xlWB = xlObject.Workbooks.Open("C:\Book1.xls") 'Open your book here
               
    Clipboard.Clear
    With xlObject.ActiveWorkbook.ActiveSheet
        .Range("A1:F7").Copy 'Set selection to Copy
    End With
     
    With MSFlexGrid1
        .Redraw = False    'Dont draw until the end, so we avoid that flash
        .Row = 0            'Paste from first cell
        .Col = 0
        .RowSel = .Rows - 1 'Select maximum allowed (your selection shouldnt be greater than this)
        .ColSel = .Cols - 1
        .Clip = Replace(Clipboard.GetText, vbNewLine, vbCr) 'Replace carriage return with the correct one
        .Col = 1            'Just to remove that blue selection from Flexgrid
        .Redraw = True      'Now draw
    End With
       
    xlObject.DisplayAlerts = False 'To avoid "Save woorkbook" messagebox
   
    'Close Excel
    xlWB.Close
    xlObject.Application.Quit
    Set xlWB = Nothing
    Set xlObject = Nothing
End Sub

Thanks! :)

Viewing all articles
Browse latest Browse all 21238

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>