Visual Basic輸出資料到Execl

1、導入Execl的類

Imports Excel = Microsoft.Office.Interop.Excel

2、設置Execl的公用變量

Application

Public xlApp As Excel.Application

Workbook

 Public xlBook As Excel.Workbook

 Worksheet

Public baseSheet, tmpSheet As Excel.Worksheet

3、 定義Execl的變量和調用相關的方法和屬性

Application.StartupPath 為Bin\Debug的開始執行路徑

   xlApp = New Excel.Application
   xlApp.DisplayAlerts = False
   xlBook = xlApp.Workbooks.Open(Application.StartupPath & "\Execl的名稱.xls")
   baseSheet = xlBook.Worksheets("Sheet1")

4、可以看excel是如何一步步執行的

xlApp.Visible = True

5、 將Execl中的第一個Sheet1複製一個並且放在Sheet1的前面,然後將新的Sheet 重新命名,原有的Sheet1在Execl中變更為Sheet2 。

baseSheet.Copy(Before:=xlBook.Sheets(1))
Dim jobSheet As Excel.Worksheet = xlBook.Sheets(1)
jobSheet.Name = "JOB"

6、給Execl的單元格賦值

startRow代表的是該列的行。

 jobSheet.Range("A" & startRow).Value = Value1
 jobSheet.Range("B" & startRow).Value = Value2

7、在Execl中插入圖片

  '打開圖片
  img = Image.FromFile(Application.StartupPath & "\foil.png")
 '复制到剪切板
  System.Windows.Forms.Clipboard.SetDataObject(img, False) 
  '粘貼圖片到Execl的位置  
  imgRage = jobSheet.Range("D" & startRow)  
  '將圖片插入到Excel
  jobSheet.Paste(imgRage, img)  

8、Shapes 对象 (Excel) 

每个 Shape 对象都代表绘图层中的一个对象,如自选图形、任意多边形、OLE 对象或图片。

shape.AddShape方法(Execl)

返回一個shape對象,該對象代表工作表上的新自Shape

語法:表達式.AddShape(Type、Left、Top、Width、Height)

類型:指定要創建的自選形狀的類型。可參考 https://docs.microsoft.com/zh-tw/office/vba/api/office.msoautoshapetype

Left:自(邊界)左上角相對於文檔左上角的位置(以點表示)。

Top:自(框)左上角相對於文檔頂端的位置(以點表示)。

Width:自選形狀邊框的寬度(以磅為單位)。

Height:自選形狀邊框的高度(以磅為單位)。

給形狀賦顏色、線條邊框定義顏色和線條粗細。

'定義形狀和位置
drillShape = jobSheet.Shapes.AddShape(Microsoft.Office.Core.MsoAutoShapeType.msoShapeRectangle, (jobSheet.Columns(1).ColumnWidth + jobSheet.Columns(2).ColumnWidth + jobSheet.Columns(3).ColumnWidth) * 6 + 10 * (scop - 1) + 1.65, topP, 4, 8)
'形狀裡面的顏色
drillShape.Fill.ForeColor.ObjectThemeColor = Microsoft.Office.Core.MsoThemeColorIndex.msoThemeColorAccent2
'形狀裡面的顏色
'drillShape.Fill.ForeColor.RGB = RGB(255, 247, 189)
'邊框線的顏色
drillShape.Line.ForeColor.ObjectThemeColor = Microsoft.Office.Core.MsoThemeColorIndex.msoThemeColorAccent2
'線寬
drillShape.Line.Weight = 3

9、Execl 的單元格一般屬性

可參考https://blog.csdn.net/WEIZH84/article/details/100887553(涉及VBA相關操作語法)

 '字體大小
 xlWorkSheet.Range("A1").Font.Size = 20
'垂直居中
 xlWorkSheet.Range("A1:L3").VerticalAlignment = Excel.XlVAlign.xlVAlignCenter
'水平居中    
 xlWorkSheet.Range("A1:L3").HorizontalAlignment = Excel.XlVAlign.xlVAlignCenter
'合併單元格  
 xlWorkSheet.Range("A1:L3").Merge(Type.Missing)     
'設定顏色         
 xlWorkSheet.Range("A1:L3").Interior.Color = Color.Yellow    '設定顏色
'字體加粗
 xlWorkSheet.Range("A" & firstRow).Font.Bold = True   
'實線
 xlWorkSheet.Range("G" & iRow).Borders.LineStyle = Excel.XlLineStyle.xlContinuous    

XLHAlign枚舉(execl) 

參考:https://docs.microsoft.com/zh-cn/office/vba/api/excel.xlhalign

名称说明
xlHAlignCenter-4108居中。
xlHAlignCenterAcrossSelection7跨列居中。
xlHAlignDistributed-4117分散对齐。
xlHAlignFill5填充。
xlHAlignGeneral1按数据类型对齐。
xlHAlignJustify-4130两端对齐。
xlHAlignLeft-4131靠左。
xlHAlignRight-4152靠右。

XLBorderWeight枚舉(PowerPoint)

參考:https://docs.microsoft.com/zh-cn/office/vba/api/powerpoint.xlborderweight

名称说明
xlHairline1细线边框(最细的边框)。
xlMedium-4138中等边框。
xlThick4粗边框(最宽的边框)。
xlThin2细边框。

 

 Style.NumberFormatLocal屬性(Execl)

以採用用戶語言字符串的形式返回或設置一個String值,它代表對象的格式代碼。

xlWorkSheet.Range("G" & iRow & ":L" & iRow).Merge(Type.Missing)
xlWorkSheet.Range("G" & iRow).HorizontalAlignment = Excel.XlHAlign.xlHAlignLeft
xlWorkSheet.Range("G" & iRow).VerticalAlignment = Excel.XlVAlign.xlVAlignCenter
xlWorkSheet.Range("G" & iRow).Borders.LineStyle = Excel.XlLineStyle.xlContinuous
xlWorkSheet.Range("A" & startRow & ":G" & firstRow).Borders.Weight = Excel.XlBorderWeight.xlThin

'就是将Sheet1的A列至F列所有单元格采用自定义的格式。与EXCEL单元格-〉设置单元格格式—〉自定义——〉选择“@"效果是一样的
xlWorkSheet.Range("G" & firstRow).NumberFormatLocal = "@"

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值