求一个dw做的网站,西安网站建立,小制作小发明大全简单,外贸机械网站用 VB.net#xff0c;VBA 两种方式 读取单元格内的 换行数据#xff0c;并出力到 CSV文件 需求 如下图所示#xff0c;为了生成csv文件导入数据库#xff0c;需要将下图 的 1 和 2 拼接成 如下 3 所示的一行数据#xff0c; 开头为 1 #xff0c;往后为 2 的换行数据 将换…用 VB.netVBA 两种方式 读取单元格内的 换行数据并出力到 CSV文件 需求 如下图所示为了生成csv文件导入数据库需要将下图 的 1 和 2 拼接成 如下 3 所示的一行数据 开头为 1 往后为 2 的换行数据 将换行符 替换为 如 3 所示的 br , 同时 1 和 2 用双引号 括起来中间用 逗号 隔开。 VB.net 代码如下
Imports System.IOClass MainWindowPrivate Sub Button_Click(sender As Object, e As RoutedEventArgs)Dim AppXls As Microsoft.Office.Interop.Excel.Application 声明Excel对象Dim AppWokBook As Microsoft.Office.Interop.Excel.Workbook 声明工作簿对象Dim AppSheet As Microsoft.Office.Interop.Excel.Worksheet 声明工作表对象AppXls New Microsoft.Office.Interop.Excel.Application 实例化Excel对象AppXls.Workbooks.Open(C:\wang\VB_family\VBA\tool\ReadExcelTest.xlsx) 打开已经存在的EXCEL文件AppXls.Visible False 使Excel不可见AppWokBook AppXls.Workbooks(1) AppWokBook对象指向工作簿C:\wang\VB系列\VBA\tool\ReadExcelTest.xlsxAppSheet AppWokBook.Sheets(Sheet1) AppSheet对象指向AppWokBook对象中的表“Sheet1”即C:\wang\VB系列\VBA\tool\ReadExcelTest.xlsx中的表“Sheet1” CSV文件路径Dim i, tDim str As StringDim str_Tmp As String Dim arr AppSheet.UsedRange.ValueDim csvFilePath As String C:\wang\VB_family\VBA\tool\file.csv 创建CSV文件并写入数据Using writer As New StreamWriter(csvFilePath) 写入标题行writer.WriteLine(msgId, msgInfo) 写入数据行For i 5 To 12For Each t In Split(arr(i, 8), Chr(10)) 拆分第8列如果第8列是单行循环只执行一次If str_Tmp Thenstr_Tmp tElsestr_Tmp str_Tmp br tEnd IfNext t生成第i行数据str arr(i, 7) , str_Tmp writer.WriteLine(str) 写入第i行数据str 初始化数据str_Tmp 初始化数据Next iEnd UsingMsgBox(CSV file generated successfully.)Console.WriteLine(CSV file generated successfully.)Console.ReadLine()使用完毕必须关闭EXCEL并退出AppXls.ActiveWorkbook.Close(SaveChanges:True)AppXls.Quit()End SubEnd Class VBA 代码如下
Attribute VB_Name 模块1
Option Explicit
Sub 宏1()Dim arr, i, tDim rowData_tmp As StringDim rowData As StringDim fileNumber As IntegerDim csvFilePath As Stringarr activesheet.usedrangerowData_tmp csvFilePath C:\wang\VB_family\VBA\tool\file_vba.csv 打开CSV文件以进行写入fileNumber FreeFileOpen csvFilePath For Output As #fileNumber 写入数据行rowData msgId, msgInfo CSV文件的列标题Print #fileNumber, rowDataFor i 5 To 12For Each t In Split(arr(i, 8), Chr(10)) 拆分第8列如果第8列是单行循环只执行一次If rowData_tmp ThenrowData_tmp tElserowData_tmp rowData_tmp br tEnd IfNext t生成第i行数据rowData arr(i, 7) , rowData_tmp Print #fileNumber, rowData 写入第i行数据rowData 初始化数据rowData_tmp 初始化数据Next i 关闭CSV文件Close #fileNumberMsgBox CSV文件已创建成功End Sub 生成文件如下
file_vba.csv
msgId, msgInfo
H220 G663,aaaaaaaaaaaaaaa1brbbbbbbbbbbbbbb1brcccccccccccccccc1
H220 G664,aaaaaaaaaaaaaaa2brbbbbbbbbbbbbbb2brcccccccccccccccc2
H220 G665,aaaaaaaaaaaaaaa3brbbbbbbbbbbbbbb3brcccccccccccccccc3
H220 G666,aaaaaaaaaaaaaaa4brbbbbbbbbbbbbbb4brcccccccccccccccc4
H220 G667,aaaaaaaaaaaaaaa5brbbbbbbbbbbbbbb5brcccccccccccccccc5
H220 G668,aaaaaaaaaaaaaaa6brbbbbbbbbbbbbbb6brcccccccccccccccc6
H220 G669,aaaaaaaaaaaaaaa7brbbbbbbbbbbbbbb7brcccccccccccccccc7
H220 G670,aaaaaaaaaaaaaaa8brbbbbbbbbbbbbbb8brcccccccccccccccc8 总结
1 VB.NET Core WPF是一种用于开发Windows Presentation FoundationWPF应用程序的框架。它是基于VB.NET语言的.NET Core平台上的一个开发框架。
WPF是一种用于创建图形用户界面GUI的技术它提供了许多丰富的可视化和交互功能。通过使用VB.NET语言和WPF开发人员可以创建现代化和可定制的桌面应用程序。
在使用VB.NET Core WPF时您可以利用.NET Core平台的许多优势例如跨平台开发和高性能。您可以使用Visual Studio等集成开发环境来创建、调试和发布您的VB.NET Core WPF应用程序。 2 由于用到了 Microsoft.Office.Interop.Excel 需要引入以下依赖。