Tag: string

Excelstring – 使用VBA进行search和sorting

寻找我的任务的起点。 情况: 我有三个具有相同结构的Excel工作表,其中包含以下列: |ID|SubID|SubName|Description|Link1|Link2| |1|1|SubName 1|Desc SubName1|P00001|P00002| |1|2|SubName 2|Desc SubName2|P00002|P00003| |2|1|SubName 1|Desc SubName1|P00001|P00002| 这里是一个包含多个单元格内的P-Number的行: |3|1|SubName 1|Desc SubName1|P00001,P00002,P00003|P00001,P00002| 我现在想要查看Link1列,并将这些值与前三列以sorting顺序放置到“Link1”工作表中,如下所示: |P-Number|ID|SubID|SubName| |P00001|1|1|SubName 1| |P00001|2|1|SubName 1| |P00001|3|1|SubName 1| |P00002|1|2|SubName 2| |P00002|3|1|SubName 1| |P00003|3|1|SubName 1| 而且我想对Link2列做同样的处理,把值放到一个单独的工作表中。 下一步就是将新工作表的P编号和一个像链接一样工作的string连接起来。 这就是我迄今为止所做的工作。 另一个想法是使SubName可点击,并让它跳转到三个工作表之一的相应名称。 我不确定一个macros是否是正确的select,或者一个Pivot表也可以做到这一点。 任何想法都表示赞赏。 谢谢。 更新 :我试图将这个概念并入我的主要macros,我也处理上面提到的列。 然而,由于我有几个遍历这个部分的循环,输出行将被列的最后一个P编号覆盖。 我用这个Sub: Sub PrintArray(Data As Variant, Cl As Range) Cl.Resize(UBound(Data, 1), UBound(Data, 2)) = Data […]

将外部单元格地址转换为vba中的范围

我在单元格A1中有一个string,它是外部单元格的单元格地址(即另一个工作簿), '[data transfer utility.xlsb]Sheet1'!$B$5 在vba我想创build一个范围对象, myRange ,将对应于存储在单元格A1中的地址。 我尝试了各种解决scheme,但都没有工作。

比较2个excel列,结果将与另一列进行比较

我对vba相当陌生,而且在比较两列(这两列中的所有数据)方面存在问题。 工作stream程是将列A与列B进行比较,并将结果放入列C.另一列(列D)也将用于比较(所有列均在1工作表中)。 逻辑会是这样的: 比较列A和列B. 如果B列是空白的,那么把“这里没有值” 如果列B有一个值(样本值:PRODUCT-ID),则将B与列D进行比较(样本值:PI,产品ID的缩写) 如果匹配放“匹配”。 如果没有匹配,就把“不匹配”

通过connectionString删除excel中的空行

我正在使用Connection String来连接Excel文件来读取数据。 我使用这个查询: SELECT * FROM [SHEET1$] 我的问题是当用户在新行中设置一个值,然后删除它,我的查询返回给我的行,但空。 我希望我的select忽略这些行,而不是像“…. WHERE COLUMN1 <> '' AND COLUMN2 <> '' ….”等。它可能删除空行而不提供所有的列列表? 谢谢!

连接提供者读取xls文件

我使用下面的连接string来读取xlsx文件。 它的工作正常。 connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileName + ";Extended Properties=\"Excel 8.0;HDR=NO;\""; 在连接string下面读取xls文件不起作用 connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Excel 8.0;Extended Properties=HDR=NO;IMEX=1;Data Source=" + fileName + ";"; 请纠正这一点。 提前致谢

使用Excel连接文件运行查询

我有一个大的Excel电子表格,运行几个查询,用户名和密码保存在连接string中的源。 我相信,对所有查询使用标准连接文件将允许刷新运行更快(因为每个查询不需要单独login),但是这些查询从几个不同的表中抽取,并且连接文件需要特定一。 有没有办法可以创build一个合适的连接文件来提高这些查询的效率?

VBA奇怪的行为转换stringdate,有些是好的,有些不是

就像标题所说的那样,有些单元最终会得到正确的值,有些单元会得到一个月和一天的切换,如果这是一个常数,我可以修复它,但是它只是混淆了一些值,我不明白为什么。 这里是代码: For v2temp = 0 To 4 form1(v2temp) = Trim(form1(v2temp)) & ";" tmpp = Left(form1(v2temp), Len(form1(v2temp)) – 1) arr = Split(tmpp, "-") ActiveWorkbook.Worksheets("TEMP2").Range("I2").NumberFormat = "dd-mm-yyyy" If tmpp <> vbNullString Then dt = DateSerial(arr(2), arr(1), arr(0)) ActiveWorkbook.Worksheets("TEMP2").Range("I2").Value = dt form1(v2temp) = ActiveWorkbook.Worksheets("TEMP2").Range("I2").Value Else form1(v2temp) = "" End If Next For v2temp = 0 To 4 […]

excel vba中string奇怪的运行时错误1004

我有一个奇怪的问题,试图写出这个非常简单的VBA方法 这工作正常: ThisWorkbook.Sheets("Analyse").Cells(i, 2) = "=HiGuys" 这工作正常: ThisWorkbook.Sheets("Analyse").Cells(i, 2) = "=VLOOKUP" 但是,这会得到一个“运行时错误1004”,而不应该这样做。 ThisWorkbook.Sheets("Analyse").Cells(i, 2) = "=VLOOKUP(" 我在这里错过了一些明显的东西…? 非常感谢 !

如何隔离Excel中以空格开头并以逗号结尾的文本string?

我有一列地址如下所示的单元格: 34470 Yucaipa Boulevard Yucaipa,CA 992399 15787 Main Street Hesperia,CA 92345 15109 Bear Valley Road Victorville,CA 92345 我想撤出城市,国家邮编; 我试图写一个公式来完成这个,但我有麻烦。 基本上我正在寻找一种方法来find昏迷, 从右到左读取string ,并停在第一空间; 看起来很简单…. 所以在上面的例子中,我正在寻找下面的string Yucaipa,CA 992399 Hesperia,CA 92345 Victorville,CA 92345

我怎样才能检查一个string的长度为48个字符,如果是要长时间剪切所有超过的字符

我如何检查48个字符的string长度,如果要长时间剪切所有超过48个字符的字符? 我想在代码(在IF和ELSE)下面的Sym.Description2做到这一点。 例如System.Description =“Ihavetomanycharactersinthisstringiwanttocutthisnow”一个50个字符的string。 因此,这应该是新的string:Sym.Description2 =“Ihavetomanycharactersinthisstringiwanttocutthisn”,正好是48个字符。 我想在VBA中做到这一点。 'Description(2) field If System.Description <> "" Then Sym.Description2 = System.Description Else Sym.Description2 = System.Name End If 谢谢您的帮助 :)