vba将一个工作表内文本赋值到另一个工作表

同一个工作簿中包含两个工作表,表1为“数据”,表2为“工作表”:

“数据”中:
I J M 的值(与下边对应,其余为空单元格)为:
3300 150 5 从这开始时第6行
3301 150 6
3302 150 7
3305 150 8
3304 150 8
3304 150 10
3304 150 10
3304 150 10
3304 150 10
3305 150 10
3306 150 10
3304 150 7
3305 150 8
3306 150 5
3306 150 7
3307 150 6
3306 150 9
3306 150 9
把上面的值赋值到“工作表”,其中” I“ 列数值复制到”工作表“的几个合并单元格中(“opq9”往下依次复制)& " * " & " 150 * 30 ",”J“列不用,”M“列复制到”工作表“T9”开始往下依次复制,结果如下:
opq合并单元格列 T
3300*150*30 5 从这开始时第9行

3301*150*30 6

3302*150*30 7

3305*150*30 8

3304*150*30 8

3304*150*30 10

3304*150*30 10

3304*150*30 10

3304*150*30 10

3305*150*30 10

3306*150*30 10

3304*150*30 7

3305*150*30 8

3306*150*30 5

3306*150*30 7

3307*150*30 6

3306*150*30 9

3306*150*30 9

Sub cpData()
    Dim index As Long
    
    For index = 6 To Sheets("数据").UsedRange.Rows.Count
        With Sheets("工作表").Range("P" & (3 + index) & ":R" & (3 + index))
            .HorizontalAlignment = xlCenter
            .VerticalAlignment = xlCenter
            .Merge
        End With
        Sheets("工作表").Range("P" & (3 + index)) = Sheets("数据").Range("I" & index) & "*" & Sheets("数据").Range("J" & index) & "*30"
        Sheets("工作表").Range("T" & (3 + index)) = Sheets("数据").Range("M" & index)
    Next index
End Sub


温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-27
用函数不行吗?追问

不,因为这不是我要最终处理的文档

第2个回答  2013-11-27
”工作表“单元格是已经合并好了的吗?追问

是合并好的,只要按照上边讲的就行,我的是wps表格

相似回答