Tag: vb.net

在C#中使用CreateOpenXmlReader读取openoffice的ods文件

我正在寻找一个库,它将读取所有types的Excel格式(例如:.xsl,.xlsx,.ods)我试了下面的代码来阅读电子表格。 try { string extension = Path.GetExtension(File1.PostedFile.FileName); switch (extension.ToLower()) { case ".xls": excelReader = ExcelReaderFactory.CreateBinaryReader(stream); break; case ".xlsx": excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream); break; case ".ods": excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream); break; } } catch (Exception ex) { } 它适用于.xsl和.xlsx文件,但不适用于openoffice .ods文件。 任何人都可以确认这是否支持openoffice或其他替代品,这将符合我的要求。

在Excel中插入空白列,并使用基于其他列数据的值

我有一个电子表格,包含计算机的FQDN列。 然而,过滤这是很困难的,因为这个独特的名字,我最终在FQDN列旁边添加一个新列,然后input一个基于这个名字的不太唯一的值。 一个例子是: dc01spmkt.domain.com新列值=“营销” 所有的主机都会有一个3个字母的名称,这样人们可以用更通用的标题过滤新的列。 我的问题是:有没有一种方法可以编写脚本,以便在原始表单到达时,我可以运行该脚本,它将在旧列中查找值以填充新的值。 因此,如果它在主机名字段中find“mkt”,则会写入MARKETING,或者如果发现“sls”,则会写入SALES?

MessageBox.Show()与所有者参数

我想在VB.NET中使用MessageBox.Show()和owner参数,如下所示: MessageBox.Show(owner As IWin32Window,…) 这是我的理解,如果这个代码是在Windows窗体中,您只需传递“我”(VB.NET)或“this”(C#)作为所有者参数。 但是,我的代码是Excel COM加载项的一部分,owner参数必须以某种方式绑定到特定的Excel窗口。 那么,我怎样才能把一个Excel窗口对象,并将其转换为IWin32Window,我可以传递给VB.NET中的MessageBox.Show()? 我会解决C#代码,如果我可以轻松地将其转换为VB.NET。

使用VB.NET进行recursion的Excel操作

我使用Visual Studio 2015和VB.net,我有2个文件夹。 1. C:\ phd \不干净2. C:\ phd \ clean 在不洁的文件夹中。 我有各种各样的子文件夹和subsubfolders包含各种文件。 我想把所有不干净的子文件夹和子文件夹中的所有.csv文件,处理它们,清理它们,并输出到C:\干净,但与不清洁中发现相同的子文件夹结构。 这是我的代码到目前为止… Imports Excel = Microsoft.Office.Interop.Excel Imports System.IO Class MainWindow Dim xl As Excel.Application = New Excel.ApplicationClass() Dim wb, wbTraj, wbForce As Excel.Workbook Dim ws, wsData, wsLeg As Excel.Worksheet Dim misValue As Object = System.Reflection.Missing.Value Dim iCol As Integer Dim iRow As […]

在VB中执行“db2look” – 获取运行时错误:find一个意外的“db2look”

我正尝试从Excel内使用VB执行“db2look”命令。 但是我得到运行时错误在“BEGIN-OF-STATEMENT”之后find了一个意外的标记“db2look”。 预期的标记包括:“DECLARE”。 SQLSTATE = 42601 我知道连接,一切都很好,因为我能够运行简单的select查询,并根据错误,这不是连接问题,而是像“db2look”无法识别或有效。 我已经在cmd窗口中运行完全相同的命令,它工作正常。 只是想知道是否有人能够在db2命令窗口/编辑器之外运行“db2look”命令并使用VB / Excel? 或者如果有什么,我失踪了。 谢谢

如何使用openfiledialog将excel文件导入到MySQL中

我想有一个button,我可以浏览一个Excel文件。 我想要里面的数据被插入到我的MySQL数据库。 我已经有一个button,它已经可以浏览和select一个文件。 在将Excel中的数据插入到mysql数据库时遇到问题。 Dim fname As String = label1.Text Try If label1.Text = "" Then Else ' Code to Import from Excel in to database. Dim dbFileName As String = fname Dim insertSql As String = "INSERT INTO tbl1 SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 8.0;HDR=yes;Database=" + dbFileName + "',[Sheet1$])" MySqlCmd = New MySqlCommand MySqlCmd.Connection = […]

VB将总天数转换为datetime

我有一个Excel工作表,我试图转录到一个VB窗体,以便从input数字获得设备的运行时间。 假devise算结果,例如:4.391286731,那就是总天数。 在我申请的Excel中: =INT(col+row) &" Days " & HOUR(col+row) & " h " & MINUTE(col+row) & " m " & SECOND(col+row) & " s". 回报是4天9时23分27秒完美。 现在在VB中,得到最后的计算后,例如:同样的4.391286731如何将这个总和转换为类似于上面的Excel的date/时间格式?

如何修改vb.net中的现有Excel文件

我想修改一个现有的Excel文件。 下面的一段代码在文档文件夹中生成一个重复的修改过的excel文件,而不是修改原始文件。 注意:我想要修改的Documents不在“ Documents文件夹中 Imports Microsoft.Office.Interop.Excel Public Class Form1 Public ExcelFolder As String Public selectedfile As String Public excel As Application Public workbook As Workbook Public sheet As Worksheet Public r As Range Public array(,) As Object Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load ExcelFolder = "D:\monica\YUKEN\MARK\Excel" Dim dir As New IO.DirectoryInfo(ExcelFolder) […]

VBA与VB.net性能与Excel数据库

我有从Excel数据透视表生成的80*15*5 = 6000数据点的表。 我必须在Visual Basic for Applications和Visual Basic.net Visual Basic for Applications编程或使用Excel公式进行select。 所有数据必须以两种不同的方式进行分析,必须计算不同的东西,并且用户应该能够以对用户友好的方式生成输出,而不必知道数据。 一个循环中循环的小示例程序在VBA中为100秒,而在Visual Basic.net中为34。 如果我要使用Excel公式,我还必须编写多个函数,因为它们还不在Excel中。 现在我正在为另一个程序做这个,而且这个在我公司的电脑上很慢。 运行时间使我selectVB.net,但是当外部VB.net创build的程序必须连接到Excel数据库时,这仍然会更快? 在VBA中使用这些数据的相对简单的方法使我想要selectVBA。 除此之外,我的猜测是使用Excel公式并不是最方便的方法,因为上面公式中的80和15可以随着时间的推移变大。 总体而言,有什么话要说我为什么要select哪种解决scheme?

如何实例化一个UserControl使用VB?

所以在C#中声明和实例化一个UserControl,你可以这样做: UserControl1 userCont = new UserControl1(); userCont.Show(); 这将显示您的用户控件名为UserControl1。 这是你在C#中做的方式,现在你怎么在VB中做到这一点? 因为我编写了一个Excel Add In,并且在function区中放置了一个userControl,但是它不想显示,而且该项目在VB中,而不是在C#中。 编辑: 我的项目的一些解释: 我有一个Excel 2013和2016 VSTO加载项目types。 我有3个类,即: UserControl1.vb – 作为我的userControl Ribbon.vb – 作为我的function区类ThisAddIn.vb – 作为类中的添加 我的userControl相当简单,它有3个button,一个“是”button,一个“否”button和一个“添加表”button。 它有1个列表框和12个checkbox… function区也很简单,我有2个button在function区中称为“显示”和“循环”… ThisAddIn类包含将使这个添加工作,如方法和一般function的代码… 好吧,这是我的课程… 我的项目的目标是: 当单击“显示”button时,CustomTaskPane将出现在右侧的Excel中,在此customTaskPane中将是我的userControl … (这工作) 非常感谢DrDonut的回答 当单击“添加表”button(在userControl中)时,我希望excel迭代所有表单,并将每个listObject的名称(表名)添加到列表框中。 (循环和添加表button是相同的) 在C#中,我知道你去: this.ListBox1.Items.Add("Item 1"); 这将添加一个项目的列表框,同样的原则应用在VB中,但与我的ListBox坐在我的userControl本身固定在CustomTaskPane中,似乎没有任何项目可以添加… (添加项目列表框不起作用) 而关于表循环,或检索他们的名字,这也不工作… (这就是我真正想要好好去的地方) 希望这个编辑能够澄清一些情况。 一些坚韧的信息: 操作系统:Windows 10 Pro(x64) 内存:32GB CPU:i7-6700 @ 3.40ghz Microsoft […]