我已经写了这个函数来删除string的开始和结束空白,任何想法,为什么它不工作? Public Function PrepareString(TextLine As String) Do While Left(TextLine, 1) = " " ' Delete any excess spaces TextLine = Right(TextLine, Len(TextLine) – 1) Loop Do While Right(TextLine, 1) = " " ' Delete any excess spaces TextLine = Left(TextLine, Len(TextLine) – 1) Loop PrepareString = TextLine End Function
我正在尝试编写将循环遍历范围内的所有单元格的代码。 最后我想做一些更复杂的事情,但由于我遇到了麻烦,我决定创build一些简短的testing程序。 第一个例子工作正常,但第二个(与命名范围)不(给出了“Object_Global失败的方法范围”错误信息)。 任何想法,我做错了什么? 我真的很想用一个命名的范围来做这个…谢谢! 作品: Sub foreachtest() Dim c As Range For Each c In Range("A1:A3") MsgBox (c.Address) Next End Sub 不起作用: Sub foreachtest2() Dim c As Range Dim Rng As Range Set Rng = Range("A1:A3") For Each c In Range("Rng") MsgBox (c.Address) Next End Sub
我的目标是使用一个名称数组在VBA中创builddynamicvariables,inheritance人的代码: Sub mymacro() Dim names() names = Array("cat_code()", "dog_code()", "eagle_code()") For Each c In names Dim c As Integer Next end sub 当然,我的真名数组有数百个动物,所以对于每一个动物都会变得无聊。 我得到的错误是Compile Error: Duplicate declaration in current scope 什么是我的目标的最佳可行解决scheme?
Dim testtext As String testtext = Worksheets("Sheet2").Range("B6").Value Worksheets("Sheet2").Range("B7").Value = testtext 一个单元格的内容简单复制到另一个单元格。 但是当B6的内容是'02345 – 运行macrosB7包含2345后,我遇到了问题,我不想失去前导零。 我试着在代码的第二行用.Textreplace.Value ,这没有帮助。
我如何告诉Excel通过行号来突出显示行。 例如,假设我想突出显示第6,10,150,201行。 谢谢。
有没有办法将背景颜色更改为xlNone ,例如整个工作表。 我看到你可以把一个背景图像…但是你怎么能改变工作表中所有单元格的颜色?
快速提问: 我想插入一个types10/3的string像这样的单元格: Worksheets("Sheet1").Range("A1").Value = "10/3" 但Excel自动将单元格格式化为date或数字。 我想把它作为一个string。 我如何用VBA实现这一点?
我想知道是否有办法在Excel或Open Office中有条件地执行此操作: if the cell is empty then the cell will have the same value as the cell above it else do nothing. 我应该使用macros吗? 请帮助我 我对Excel很less有经验。 c 1 | 2011年10月21日 c 2 | c 3 | c 4 | 10/24/2011 c 5 | c 6 | c 7 | 10/25/2011 c 8 | c 9 […]
所以我有一个图表,看起来像这样。 假设左上angular的值1在单元格A1中: x= 1 2 3 4 5 6 7 8 4 3 2 1 2 3 4 5 9 8 7 6 7 8 9 10 8 7 6 5 4 3 2 1 Sum= 21 18 15 12 13 14 15 16 有从1到8的x值,以及通过使用它的方程式或其下面的东西得到的三列值。 总和是三个值的总和,低于它们对应的x值。 我试图找出那些将通过总和的行,find最小的值,然后将它的相应的x值分配给一个variables。 我还需要将该x值的左侧和右侧的值分配给其他variables。 对于这个特定的图表,12是最小的总和,所以我将分配variable1 = 4 ,因为那是该列的相应x值。 然后我的第二个variables叫做lowerbound ,它等于3,因为它在x = […]
我需要使用文件对话框(Excel中的VBAmacros)打开的文件的path名和文件名。 我想在excelsheet中用超链接显示这些信息。 谁能帮我? 提前致谢 编辑: 这就是我刚发现的: Sub GetFilePath() Set myFile = Application.FileDialog(msoFileDialogOpen) With myFile .Title = "Choose File" .AllowMultiSelect = False If .Show <> -1 Then Exit Sub End If FileSelected = .SelectedItems(1) End With ActiveSheet.Range("A1") = FileSelected End Sub 有了这个代码我有文件path。 现在我仍然在寻找一种获取文件名的方法。 TX