如何在Excel 2000中使用VBA打开以分号分隔的CSV文件?
样本数据
An ID;TEST20090222
A Name;Firstname Surname
A Date;11.05.2000
Country:;SomeCountryName
Currency;EUR
CostA;
CostB;
CostC;
Part1;10;20;30
Part2;;;;
Part3;34;56;87
Run Code Online (Sandbox Code Playgroud)
码
在带有VBA 6.5.1025的Excel 2003 11.8231.8221 SP3中,我可以使用以下VBA代码打开以分号分隔的文件:
Workbooks.OpenText filename:=myFilename, _
DataType:=xlDelimited, Semicolon:=True, Local:=True
Run Code Online (Sandbox Code Playgroud)
但是,当在带有VBA 6.5.1025的Excel 2000 9.0.8961 SP1中运行相同的代码时,我收到以下错误:
编译错误:找不到命名参数
那是 - 我认为 - 因为Excel 2000不知道命名参数"Local".
因此,我删除了"Local:= True"部分.但问题是,CSV文件中的整行被写入一个单元格而不是分成单独的分号分隔部分.
我在互联网上搜索了一个解决方案,但没有发现任何有用和简洁的内容.
有任何想法吗?
[更新17.02.2009]
我尝试了用户lc和宏录制器的建议.然而,结果令人困惑.
当我使用菜单File-> Open ...打开CSV文件,然后选择CSV文件时,正确分析分号分隔数据.录制的代码非常简单:
Workbooks.Open filename:= _
"D:\testdata\Example 01 CSV\input.csv"
Run Code Online (Sandbox Code Playgroud)
但是,当我在宏中使用该VBA代码时,每一行最终会再次出现在一个单元格中.
根据用户barrowc的建议,我还将Windows"区域和语言选项"设置从"德语(瑞士)"更改为"英语(美国)".即使重启Excel后,没有任何改变,同样的问题.
我想知道为什么它正在使用用户Remou的系统.您有哪些区域和语言设置?
如果我使用git mv命令移动Git跟踪文件而不是仅使用MS-DOS move或Windows资源管理器移动文件,这会有所不同吗?
回到Subversion时代,有必要使用例如TortoiseSVN SVN Move versioned files here命令来保持历史不变.
我希望它在Git中以相同的方式工作,但是测试(参见下面的示例)显示Git自己检测到文件已被移动并且历史记录保持不变.
那么为什么要使用git mv呢?
C:\test>git init
C:\test>mkdir folder
C:\test>cd folder
C:\test\folder>echo "1" > file.txt
C:\test\folder>git add .
C:\test\folder>git commit -m "Initial commit"
C:\test\folder>echo "2" >> file.txt
C:\test\folder>git add .
C:\test\folder>git commit -m "Update file.txt"
C:\test\folder>move file.txt ..
C:\test\folder>cd ..
C:\test>git status
On branch master
Changes not staged for commit:
(use "git add/rm <file>..." to update what will be committed)
(use "git checkout -- <file>..." …Run Code Online (Sandbox Code Playgroud) 在C#WinForms项目的Visual Studio 2008中,表单上有一个按钮.在属性视图中,属性"Font"设置为"Arial Unicode MS".
我需要在属性"Text"中放入什么,所以我得到按钮上显示的unicode字符\ u0D15?
当我将\ u0D15放入"Text"属性时,该按钮显示六个字符"\ u0D15"而不是一个unicode字符.
在以下PDF中,您可以看到\ u0D15的unicode字符:http://unicode.org/charts/PDF/U0D00.pdf
题
是否可以从C#调用Word 2003的工具>比较和合并文档..."函数,并获得是否发现任何差异的反馈?
到目前为止我发现了什么
可以像这样调用这样的功能.但我不知道如何得到反馈是否有任何差异.
private void CompareAndMergeWithFileB(string fullFilePath)
{
string FileName = fullFilePath;
object MergeTarget = WdMergeTarget.wdMergeTargetSelected;
object DetectFormatChanges = false;
object UseFormattingFrom = WdUseFormattingFrom.wdFormattingFromPrompt;
object AddToRecentFiles = true;
word.ActiveDocument.Merge(FileName, MergeTarget, DetectFormatChanges, UseFormattingFrom, AddToRecentFiles);
}
Run Code Online (Sandbox Code Playgroud) 你会如何/用\Groovy 替换?这就
"//10.1.1.1/temp/test"变成了"\\10.1.1.1\temp\test".
"//10.1.1.1/temp/test".replaceAll(/'\\/'/,'\\')< - ?不起作用
有没有人有想法?
谢谢你的回答.
这是一个例子:
public class Program
{
public static void Main(string[] args)
{
Console.WriteLine("Test {0, 10}", 1100);
Console.WriteLine("Test {0, 10}", 2);
Console.WriteLine("Test {0, 10}", 40);
}
}
Run Code Online (Sandbox Code Playgroud)
输出是:
Test 1100
Test 2
Test 40
Press any key to continue . . .
Run Code Online (Sandbox Code Playgroud)
是否可以10在上面的示例变量中设置数字?
以下描述了意图,但没有编译,因为a string是预期的,而不是int:
public class Program
{
public static void Main(string[] args)
{
int i = 10;
Console.WriteLine("Test {0, i}", 1100);
Console.WriteLine("Test {0, i}", 2);
Console.WriteLine("Test {0, i}", 40);
}
}
Run Code Online (Sandbox Code Playgroud) 为什么C#中的"out"参数作为语言构造存在?
为什么它首先存在?是否有更好的语言功能可以获得"out"参数可以获得的相同效果?
使值类型的行为类似于引用类型,这不奇怪吗?
是不是有更好的方法从方法返回多个值?
它是一个历史性的东西,意味着C#的第一个版本没有办法实现使用out参数可以实现的东西,但现在有更新的功能,它只是保留在语言中以便向后兼容?
在阅读类似的问题时,我没有发现任何重复.
我很想听到这样的话:"看,这是一个只能通过使用"out"参数语言结构来解决的问题,这里有一个代码示例......".
或者,"看,这曾经是解决以下问题的唯一方法......代码示例......,但是因为C#版本...更好的解决方法就是这样......代码示例......" .
没有意见.
我想创建一堆打开 Git 存储库的快捷方式
GitKraken 是这样开始的:
C:\Users\<username>\AppData\Local\gitkraken\Update.exe --processStart "gitkraken.exe"
Run Code Online (Sandbox Code Playgroud)
我尝试像这样添加路径,但什么也没发生:
C:\Users\<username>\AppData\Local\gitkraken\Update.exe --processStart "gitkraken.exe \"C:\<path to repo with spaces>\MyRepo1\""
C:\Users\<username>\AppData\Local\gitkraken\Update.exe --processStart "gitkraken.exe \"C:\<path to repo with spaces>\MyRepo2\""
C:\Users\<username>\AppData\Local\gitkraken\Update.exe --processStart "gitkraken.exe \"C:\<path to repo with spaces>\MyRepo3\""
Run Code Online (Sandbox Code Playgroud)
可能存在多个问题:
C:\Users\<username>\AppData\Local\gitkraken\Update.exe --processStart "gitkraken.exe -p \"C:\<path to repo with spaces>\MyRepo1\""特定
String myString = "blah"
List list = ["a", "b", "cblah", "dblah"]
Run Code Online (Sandbox Code Playgroud)
任务
检查"blah"是否包含在任何元素中list.