Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2363|回复: 4

[已解决]能力有限 请大大们帮忙 数据依次自动保存

[复制链接]
发表于 2016-5-23 22:21 | 显示全部楼层 |阅读模式
各位大大帮忙看看在表1中是一个游戏的模拟程序  表2中a:k单元格是从表1中提取的数据 每次70行数据
问题是这样的我想每次模拟一靴的结果都依次自动保存在表2中每次有70组数据,每次结果和每次结果用
三行空格隔开 现在的问题是我每次模拟一靴上一次的结果就没了只有新的,只保存当次的结果,不知表达清楚没
最佳答案
2016-5-24 06:51
你看一下,是不是这种效果的。

Sub Dt()
    Dim Arr, Brr, Crr
    With Sheets("sheet1")
        Arr = .[h1:l141]
        Brr = .[ad1:ah141]
    End With
    ReDim Crr(1 To 70, 1 To 11)
    For i = 2 To 71
        d = (i - 1) * 2: s = (i - 1) * 2 + 1: js = js + 1
        Crr(js, 1) = Arr(d, 1)
        Crr(js, 2) = Brr(s, 4)
        Crr(js, 3) = Brr(s, 1)
        Crr(js, 4) = Brr(s, 2)
        Crr(js, 5) = Arr(d, 2)
        Crr(js, 6) = Arr(d, 3)
        Crr(js, 7) = Arr(s, 3)
        Crr(js, 8) = Arr(d, 4)
        Crr(js, 9) = Arr(d, 5)
        Crr(js, 10) = Arr(s, 5)
        Crr(js, 11) = Brr(s, 5)
    Next
    lrow = Sheets("sheet2").Cells(Rows.Count, 1).End(3).Row
    If lrow = 1 Then
        Sheets("sheet2").[a2].Resize(70, 11) = Crr
    Else
        Sheets("sheet2").[a1].Resize(70, 11).Offset(lrow + 3) = Crr
    End If
    With Sheets("sheet2")
        .Range("a1:k1").Copy
        .Cells(lrow + 3, 1).Resize(70, 11).PasteSpecial Paste:=xlPasteFormats
    End With
     Application.CutCopyMode = False
End Sub
QQ截图20160524064237.png

12 .545.zip (69.51 KB, 下载次数: 13)

12 .545.rar

57.93 KB, 下载次数: 7

发表于 2016-5-23 23:11 | 显示全部楼层
你原来的都是用公式实现的是吧,我试一下看看。
回复

使用道具 举报

发表于 2016-5-24 06:51 | 显示全部楼层    本楼为最佳答案   
你看一下,是不是这种效果的。

Sub Dt()
    Dim Arr, Brr, Crr
    With Sheets("sheet1")
        Arr = .[h1:l141]
        Brr = .[ad1:ah141]
    End With
    ReDim Crr(1 To 70, 1 To 11)
    For i = 2 To 71
        d = (i - 1) * 2: s = (i - 1) * 2 + 1: js = js + 1
        Crr(js, 1) = Arr(d, 1)
        Crr(js, 2) = Brr(s, 4)
        Crr(js, 3) = Brr(s, 1)
        Crr(js, 4) = Brr(s, 2)
        Crr(js, 5) = Arr(d, 2)
        Crr(js, 6) = Arr(d, 3)
        Crr(js, 7) = Arr(s, 3)
        Crr(js, 8) = Arr(d, 4)
        Crr(js, 9) = Arr(d, 5)
        Crr(js, 10) = Arr(s, 5)
        Crr(js, 11) = Brr(s, 5)
    Next
    lrow = Sheets("sheet2").Cells(Rows.Count, 1).End(3).Row
    If lrow = 1 Then
        Sheets("sheet2").[a2].Resize(70, 11) = Crr
    Else
        Sheets("sheet2").[a1].Resize(70, 11).Offset(lrow + 3) = Crr
    End If
    With Sheets("sheet2")
        .Range("a1:k1").Copy
        .Cells(lrow + 3, 1).Resize(70, 11).PasteSpecial Paste:=xlPasteFormats
    End With
     Application.CutCopyMode = False
End Sub
QQ截图20160524064237.png

12 .545.zip (69.51 KB, 下载次数: 13)
回复

使用道具 举报

 楼主| 发表于 2016-5-24 12:56 | 显示全部楼层
问题解决了 谢谢大大  真心感谢!!!!!!!!
回复

使用道具 举报

发表于 2016-5-27 10:34 | 显示全部楼层
顶      
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-17 08:14 , Processed in 0.243222 second(s), 14 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表