VBA:根据列中的“随机”内容填充单元格

洛q

我会尽力解释我的问题。我需要基于在单元格(列)中出现的四个值之一填充值。我有一个密码

  Sub testmacro()


    If Sheets("List1").Range("A1") = "Keyword1" Then
Sheets("List1").Range("b1") = "60"
Sheets("List1").Range("c1") = "630"
Sheets("List1").Range("d1") = "0.7"
Sheets("List1").Range("e1") = "0.7"
        ElseIf Sheets("List1").Range("A1") = "Keyword2" Then
Sheets("List1").Range("b1") = "1500"
Sheets("List1").Range("c1") = "15750"
Sheets("List1").Range("d1") = "1.46"
Sheets("List1").Range("e1") = "1"
        ElseIf Sheets("List1").Range("A1") = "Keyword3" Then
Sheets("List1").Range("b1") = "1500"
Sheets("List1").Range("c1") = "15750"
Sheets("List1").Range("d1") = "2.98"
Sheets("List1").Range("e1") = "1"
        ElseIf Sheets("List1").Range("A1") = "Keyword4" Then
Sheets("List1").Range("b1") = "1500"
Sheets("List1").Range("c1") = "15750"
Sheets("List1").Range("d1") = "2.38"
Sheets("List1").Range("e1") = "1"    
    End If

    If Sheets("List1").Range("A2") = "Keyword1" Then
Sheets("List1").Range("b2") = "60"
Sheets("List1").Range("c2") = "630"
Sheets("List1").Range("d2") = "0.7"
Sheets("List1").Range("e2") = "0.7"
        ElseIf Sheets("List1").Range("A2") = "Keyword2" Then
Sheets("List1").Range("b2") = "1500"
Sheets("List1").Range("c2") = "15750"
Sheets("List1").Range("d2") = "1.46"
Sheets("List1").Range("e2") = "1"
        ElseIf Sheets("List1").Range("A2") = "Keyword3" Then
Sheets("List1").Range("b2") = "1500"
Sheets("List1").Range("c2") = "15750"
Sheets("List1").Range("d2") = "2.98"
Sheets("List1").Range("e2") = "1"
        ElseIf Sheets("List1").Range("A2") = "Keyword4" Then
Sheets("List1").Range("b2") = "1500"
Sheets("List1").Range("c2") = "15750"
Sheets("List1").Range("d2") = "2.38"
Sheets("List1").Range("e2") = "1"    
    End If

。等等 。如您所见,此代码仅可使用2行,但是如果我需要10000行怎么办?不可能这样写。我需要可以穿过A列的内容,注意寻找“关键字”,然后用正确的值填充其余的行。谢谢您的帮助!(是的,Iam是VBA的新手)

帐篷

您可以通过使用With语句来组织事物来简化事物。还添加Select Case语句以清除If - Elseif - End If表示法。然后添加For循环使事情更容易键入。循环时,请注意,您可以使用.Cells注解而不是.Range(例如Sheets(1).Range("B5"),与Sheets(1).Cells(5, 2)

例如:

For row = 1 to 2
    With Sheets("List1")
        Select Case .Cells(row,1)
            Case "Keyword1"
                .Cells(row,2)  = "60"
                .Cells(row,3)  = "630"
                .Cells(row,4)  = "0.7"
                .Cells(row,5)  = "0.7"
            Case "Keyword2"
                .Cells(row,2) = "1500"
                .Cells(row,3) = "15750"
                .Cells(row,4) = "1.46"
                .Cells(row,5) = "1"
            Case "Keyword3"
                .Cells(row,2) = "1500"
                .Cells(row,3) = "15750"
                .Cells(row,4) = "2.98"
                .Cells(row,5) = "1"
            Case "Keyword4"
                .Cells(row,2) = "1500"
                .Cells(row,3) = "15750"
                .Cells(row,4) = "2.38"
                .Cells(row,5) = "1"     
        end select
    end with
next col

要对任意数量的行执行此操作,只需将行更改为For如下所示:

For row = 1 to 10000 ' if you know the exact amount or...

numRows = Application.WorksheetFunction.CountA(ThisWorkbook.Sheets("List1").Columns(1))
For row = 1 to numRows
     'do the rest

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

VBA:根据列中的“随机”内容填充单元格

来自分类Dev

Excel VBA根据之前的单元格中的值填充空白单元格

来自分类Dev

VBA CODE根据2个不同列中的条件替换单元格内容

来自分类Dev

在Google表格中,我想根据B列的内容在某些条件下填充A列中的单元格

来自分类Dev

使用列引用清除VBA中的单元格内容

来自分类Dev

使用列引用清除VBA中单元格的内容

来自分类Dev

根据另一列中的值填充和填充多列中的单元格

来自分类Dev

VBA:根据单元格范围和间隔填充“时间”列

来自分类Dev

如何根据填充颜色在单元格中显示值 - Excel VBA 中的事件

来自分类Dev

搜索按钮VBA:在Excel单元格中查找值,并根据查找结果填充字段

来自分类Dev

用于根据单元格中的值更改形状填充颜色的 VBA 代码

来自分类Dev

根据重复的单元格和第二列(VBA)的内容删除行

来自分类Dev

根据条件在多列中上下填充单元格

来自分类Dev

CSS 网格模板:根据单元格的类填充列

来自分类Dev

如何从数组中随机化单元格内容

来自分类Dev

如何从数组中随机化单元格内容

来自分类Dev

根据另一列中的条件在上方和下方填充空白单元格

来自分类Dev

根据签名在Excel中填充空白单元格

来自分类Dev

从单元格填充列

来自分类Dev

根据相邻单元格中的值填充单元格

来自分类Dev

根据另一个单元格中的值填充单元格

来自分类Dev

如何在VBA中的单元格中填充颜色?

来自分类Dev

如何在VBA中的单元格中填充颜色?

来自分类Dev

在单元格中输入随机日期-Excel VBA

来自分类Dev

Googlesheet根据其内容在下一列中合并2个单元格

来自分类Dev

根据Google表格中其他列的最大值返回单元格内容

来自分类Dev

填充第二列中的特定单元格-VBA Excel

来自分类Dev

用序列号VBA填充列中的非空单元格

来自分类Dev

如何根据单元格的内容在 UICollectionView 中准备ForSegue?

Related 相关文章

  1. 1

    VBA:根据列中的“随机”内容填充单元格

  2. 2

    Excel VBA根据之前的单元格中的值填充空白单元格

  3. 3

    VBA CODE根据2个不同列中的条件替换单元格内容

  4. 4

    在Google表格中,我想根据B列的内容在某些条件下填充A列中的单元格

  5. 5

    使用列引用清除VBA中的单元格内容

  6. 6

    使用列引用清除VBA中单元格的内容

  7. 7

    根据另一列中的值填充和填充多列中的单元格

  8. 8

    VBA:根据单元格范围和间隔填充“时间”列

  9. 9

    如何根据填充颜色在单元格中显示值 - Excel VBA 中的事件

  10. 10

    搜索按钮VBA:在Excel单元格中查找值,并根据查找结果填充字段

  11. 11

    用于根据单元格中的值更改形状填充颜色的 VBA 代码

  12. 12

    根据重复的单元格和第二列(VBA)的内容删除行

  13. 13

    根据条件在多列中上下填充单元格

  14. 14

    CSS 网格模板:根据单元格的类填充列

  15. 15

    如何从数组中随机化单元格内容

  16. 16

    如何从数组中随机化单元格内容

  17. 17

    根据另一列中的条件在上方和下方填充空白单元格

  18. 18

    根据签名在Excel中填充空白单元格

  19. 19

    从单元格填充列

  20. 20

    根据相邻单元格中的值填充单元格

  21. 21

    根据另一个单元格中的值填充单元格

  22. 22

    如何在VBA中的单元格中填充颜色?

  23. 23

    如何在VBA中的单元格中填充颜色?

  24. 24

    在单元格中输入随机日期-Excel VBA

  25. 25

    Googlesheet根据其内容在下一列中合并2个单元格

  26. 26

    根据Google表格中其他列的最大值返回单元格内容

  27. 27

    填充第二列中的特定单元格-VBA Excel

  28. 28

    用序列号VBA填充列中的非空单元格

  29. 29

    如何根据单元格的内容在 UICollectionView 中准备ForSegue?

热门标签

归档