标签: excel-2010

如何设置单元格值=什么是循环?

我在下面有这个代码.如何将单元格值设置为=循环该值的是什么?

Sub Test2()
      ' Select cell A2, *first line of data*.
      Range("A2").Select
      ' Set Do loop to stop when an empty cell is reached.
      Do Until IsEmpty(ActiveCell)
         ' Insert your code here.
         ' Step down 1 row from present location.
         ActiveCell.Offset(1, 0).Select
      Loop
   End Sub
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba excel-2010

0
推荐指数
1
解决办法
247
查看次数

将当前工作簿分配给 Excel 中的工作簿对象

我尝试将当前工作簿分配给工作簿对象:

Dim wb As Workbook, ws As Worksheet, rng As Range

wb = ThisWorkbook
Run Code Online (Sandbox Code Playgroud)

在本例中,代码正在运行并且是当前活动的工作簿。但我收到以下错误,我错在哪里:

91 - Object variable or With block variable not set

excel vba excel-2010

0
推荐指数
1
解决办法
2万
查看次数

VBA:使用其他名称粘贴图表

我使用VBA复制并粘贴图表。

    ActiveSheet.ChartObjects("Chart1").Activate
    ActiveChart.ChartArea.Copy

    ActiveSheet.PasteSpecial Format:="Microsoft Office Drawing Object", Link:= _
        False, DisplayAsIcon:=False
Run Code Online (Sandbox Code Playgroud)

问题是我最终得到两个具有相同名称("Chart1")的图表,并且在尝试以下方式重命名它们时:

'ActiveSheet.Shapes("Chart1").Name = CHART_NAME
Run Code Online (Sandbox Code Playgroud)

他们俩都被重命名。

如何将图表粘贴为其他名称。

excel charts vba copy-paste excel-2010

0
推荐指数
1
解决办法
5449
查看次数

MS Excel不会自动复制颜色主题

我正在使用MS Excel 2010我的公司为MS Excel 2010使用了一套标准配色方案/主题.我给它起了一个名字(companycolor).我有一个模板包含该颜色方案和一个宏来执行任务.当我按下宏按钮时,它会生成活动表的副本,保护它并通过电子邮件发送给预期的收件人.问题是,当宏将活动表复制到新工作簿时,它不会复制模板具有的配色方案/主题,我我的公司配色方案(companycolor)意味着所有单元格的颜色,图表和形状的颜色会受到干扰,并根据Excel默认颜色方案进行更改,这似乎很奇怪.您是否有任何方法可以解决这个问题或在这方面的任何建议

这是Snap Shot的链接!,帮助您更好地理解我的问题 *>>这是vba代码,它将活动工作簿的活动工作表副本复制到新工作簿中,保护它并通过电子邮件发送给它.***

Private Sub CommandButton2_Click()

Dim FileExtStr As String
Dim FileFormatNum As Long
Dim Sourcewb As Workbook
Dim Destwb As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim OutApp As Object
Dim OutMail As Object

If (Range("AQ5") <> "") Or (Range("AQ6") <> "") Then
Range("A5").Select

With Application
 .ScreenUpdating = False
 .EnableEvents = False
End With

Set Sourcewb = ActiveWorkbook
Application.ScreenUpdating = False

ActiveSheet.Copy

Range("A14").ClearContents
ActiveSheet.Protect Password:="1234567890" …
Run Code Online (Sandbox Code Playgroud)

vba themes colors excel-vba excel-2010

0
推荐指数
1
解决办法
6763
查看次数

Excel - 获取包含文本的特定列中的最高编号

我有这两张纸,我用来跟踪我的工作.在其中一张纸上,我有我的概述,在那里我可以看到我手头的所有任务.在其他表格中,我有我正在做的不同工作.

现在......我正在寻找Microsoft Excel的公式,我可以在其中执行以下操作:

="获得最高行数,在一些列中,这不是空的,并将该列中的文本放入另一个单元格"(参见下面的示例)

示例:假设我将此公式插入D10,并检查整个A列,那么这将是结果

实施例1,

      A      B      C      D    
1    Foo
2    Bar
3    Is
4    An
5    Apple
6    From
7    Chile
8
9
10                       Chile
Run Code Online (Sandbox Code Playgroud)

例2

      A      B      C      D    
1    Foo
2    Bar
3    Is
4    An
5    Apple
6    
7    
8
9
10                       Apple
Run Code Online (Sandbox Code Playgroud)

例3

      A      B      C      D    
1    Foo
2    Bar
3    Is
4    
5    
6    
7    
8
9
10                         Is
Run Code Online (Sandbox Code Playgroud)

例4

          A          B          C          D    
1    Foo bar is
2    Also an …
Run Code Online (Sandbox Code Playgroud)

excel excel-formula excel-2010

0
推荐指数
1
解决办法
947
查看次数

数据验证列表错误

我正在尝试添加数据验证下拉列表,但我已经对其进行了一段时间的调试,但无济于事。我收到运行时错误 1004、应用程序定义或对象定义错误。该错误发生在Validation.Add语句的公式 1 设置部分。

我尝试使用对命名范围的字符串引用、对标准范围的字符串引用,以及如下所示的从工作表上的列表生成的逗号分隔列表字符串,如下面的代码所示。我已经检查了列表字符串Debug.Print并得到了预期的结果。

Sub addPT_Validation()
Dim sValidationList As String
Dim cell As Range

For Each cell In ThisWorkbook.Names("PT_Puldown").RefersToRange
    sValidationList = sValidationList & cell.Value & ","
Next cell

sValidationList = Left(sValidationList, Len(sValidationList) - 1)

With ActiveSheet.Range("D14").Validation
    .Add Type:=xlValidateList, _
            AlertStyle:=xlValidAlertStop, _
            Operator:=xlEqual, _
            Formula1:=sValidationList
    .IgnoreBlank = True
    .InCellDropdown = True
    .ShowError = True
End With
End Sub
Run Code Online (Sandbox Code Playgroud)

在此先感谢您的任何指导。

validation excel vba excel-2010

0
推荐指数
1
解决办法
275
查看次数

未为求解器定义 VBA Sub

每当我尝试使用它时,以下代码行都会给我 Sub 或 Function not defined 。我试过仔细检查我的拼写,重命名它,在线查找其他问题(大多数其他错误是忘记在工作表或工作表后添加 s),但我不知道我的代码有什么问题。我最初是从宏记录器中获得此代码的。

我在不同的工作表上多次使用这个子,但这并没有影响我的其他类似的子。

Sub SolverSolver()

    SolverOk SetCell:="$G$3", MaxMinVal:=2, ValueOf:=0, ByChange:="$G$4,$G$6", _
        Engine:=1, EngineDesc:="GRG Nonlinear"
    SolverSolve

End Sub
Run Code Online (Sandbox Code Playgroud)

也许它的使用方式有问题,所以我在下面添加了它的调用方式。这一行在简单命令的一个大子中,比如给一个单元一个名字,这个大的简单子也重复多次。但是,即使尝试通过直接通过开发人员选项卡运行 sub 来运行它,它仍然有相同的错误,所以我认为这不是调用 sub 的方式。

ActiveSheet.Buttons.Add(630.75, 52.5, 74.25, 26.25).OnAction = "SolverSolver"
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激!

excel vba excel-2010

0
推荐指数
1
解决办法
2万
查看次数

期望数组,编译错误

    For j = 0 To 20
        For i = 0 To 20

            ReDim atoms(0 To 20, 0 To 20)
            ReDim atomschange(0 To 20, 0 To 20)
            atomschange(j, i) = 0

            If i Mod 2 = 0 And j Mod 2 = 0 Then
                [B2].Offset(j, i).Interior.ColorIndex = 37
                atoms(j, i) = 1
            Else
                [B2].Offset(j, i).Interior.ColorIndex = 36
                atoms(j, i) = 0
            End If
        Next i
    Next j
End Sub
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

excel vba excel-vba excel-2010

0
推荐指数
1
解决办法
235
查看次数

如何使不连续的单元格范围适用于每个引用的单元格

我有一个不连续的范围,我希望用户在该范围内的每个单元格中写入的内容显示在我创建的表格的列中.在我的表的第一列中,当用户在一个指定的单元格中添加一个值直到18时,我在表中的每个生成条目中都有程序编号.我将范围中的每个单元格重命名为"Space_" (某些数字)".即使我已经写了三个指定的单元格,我的表只显示第一个指定单元格中的第一个值.

在此输入图像描述

到目前为止,这是我的代码:

Sub test2()

Dim wb As Workbook: Set wb = ThisWorkbook
Dim ws As Worksheet: Set ws = wb.Sheets("Sheet1")
Dim i As Integer
Dim rng As Range

Set rng = ws.Range("Space_7, Space_10, Space_13, Space_16, Space_19, Space_22, Space_25, Space_28, Space_31, Space_34, Space_37, Space_40, Space_53, Space_56, Space_59, Space_62, Space_65, Space_68")


ws.Range("A13:A31,B13:B31").ClearContents

For i = 1 To 18

If Not IsEmpty("rng") Then
ws.Range("A12").Offset(1).Value = i
End If
Exit For
Next i

If Not IsEmpty("rng") Then
    ws.Range("B12").Offset(1).Value = rng.Value
End If

End …
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba excel-2010

0
推荐指数
1
解决办法
65
查看次数

VBA Word 更改表格单元格中特定单词的字体大小

我正在从 Excel 编辑 Microsoft Word 文档。我的 Word 文档中有一个表格,其中第 4 列由一个数字和后面的字母wk 组成

例子:

+------+------+------+-------+
| Col1 | Col2 | Col3 | Col4  |
+------+------+------+-------+
| test |    2 |  123 | 1 wk  |
| test |    2 |  123 | 13 wk |
| test |    2 |  123 | 10 wk |
+------+------+------+-------+
Run Code Online (Sandbox Code Playgroud)

我正在尝试更改字母wk的字体大小。我想我可以通过选择来做到这一点,然后替换字母,但它绝对不能通过 Excel 在 VBA 中工作。我怎样才能做到这一点?

我目前的代码:

Tbl.Columns(4).Select
WDApp.Selection.Find.ClearFormatting
With WDApp.Selection.Find
    '.ClearFormatting
    .Text = "wk"
    .Replacement.Text = "wk"
    .Font.Size = 9
End With …
Run Code Online (Sandbox Code Playgroud)

excel vba ms-word excel-2010

0
推荐指数
1
解决办法
1528
查看次数