代码之家  ›  专栏  ›  技术社区  ›  Dushyant Patel

根据另一个单元格中的数字在单元格中输入值

  •  -5
  • Dushyant Patel  · 技术社区  · 6 年前

    如果有人做过类似的事情,请帮助。 我要找的是一个宏,它查看我的A2值,然后根据值B将其复制到D列中,后面加上“_u2;”(下划线)。

    enter image description here

    2 回复  |  直到 6 年前
        1
  •  2
  •   Pᴇʜ    6 年前

    这需要两个循环。一个循环通过A列,另一个循环计数到B列的值。

    Option Explicit
    
    Public Sub WriteValues()
        With Worksheets("Sheet1")
            Dim aLastRow As Long
            aLastRow = .Cells(.Rows.Count, "A").End(xlUp).Row 'get last used row in col A
    
            Dim dRow As Long
            dRow = 1 'start row in col D
    
            Dim aRow As Long
            For aRow = 1 To aLastRow 'loop through col A
                Dim bCount As Long
                For bCount = 1 To .Cells(aRow, "B").Value 'how many times is A repeated?
                    .Cells(dRow, "D").Value = .Cells(aRow, "A") & "_" & bCount 'write into column D
                    dRow = dRow + 1 'count rows up in col D
                Next bCount
            Next aRow
        End With
    End Sub
    
        2
  •  0
  •   user4039065 user4039065    6 年前

    你的要求有点缺乏细节,但这会满足你的要求。

    dim i as long
    with worksheets("sheet1")
        for i=1 to .cells(2, "B").value2
            .cells(.rows.count, "D").end(xlup).offset(1, 0) = .cells(2, "A").value & format(i, "\_0")
        next i
    end with