Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!

[通知] [通知] 统计VBA学习小组正式组的积分帖之作业上交贴(第16周)

  [复制链接]
发表于 2012-4-27 23:48 | 显示全部楼层
g17:szczm121   13课作业g17-szczm121.rar (9.15 KB, 下载次数: 4)

评分

参与人数 1金币 +8 收起 理由
兰色幻想 + 8 答案正确

查看全部评分

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
回复

使用道具 举报

发表于 2012-4-28 09:55 | 显示全部楼层
13课作业.rar (10.22 KB, 下载次数: 2)

评分

参与人数 1金币 +8 收起 理由
兰色幻想 + 8 答案正确

查看全部评分

回复

使用道具 举报

发表于 2012-4-28 13:32 | 显示全部楼层
本帖最后由 开心妙妙 于 2012-4-28 13:33 编辑

13课作业-B09开心妙妙.rar (10.7 KB, 下载次数: 3)

评分

参与人数 1金币 +9 收起 理由
兰色幻想 + 9 答案正确

查看全部评分

回复

使用道具 举报

发表于 2012-4-28 19:17 | 显示全部楼层
16组:libenwen2011  (UID: 514207)

Sub 第13课数组作业()
  Dim x As Long, y As Long, h
  Dim arr(1 To 17, 1 To 4)
  h = 0
  For x = 1 To 17
    For y = 1 To 4
       arr(x, y) = Cells(x, y)
       Cells(x, y + 6) = arr(x, y) '要求1
       If arr(x, y) < 0 Then
          Cells(x, y + 6) = 0
       End If
       If arr(x, y) < 0 Then '要求2: 把负数全部显示到M列
          h = h + 1
          Range("m" & h) = arr(x, y)
       End If
     Next y
  Next x
End Sub

第13课作业.xls

27 KB, 下载次数: 11

评分

参与人数 1金币 +5 收起 理由
兰色幻想 + 5 要用VBA数组完成填充

查看全部评分

回复

使用道具 举报

发表于 2012-4-28 20:33 | 显示全部楼层
收获源自积累,坚持终能成长!
回复

使用道具 举报

发表于 2012-4-28 20:44 | 显示全部楼层
13课作业.rar (7.69 KB, 下载次数: 2)

评分

参与人数 1金币 +9 收起 理由
兰色幻想 + 9 答案正确

查看全部评分

回复

使用道具 举报

发表于 2012-4-28 21:05 | 显示全部楼层
作业已完成,请批改。谢谢!
Sub 兰江自由鱼()
    Dim arr, arr_t(1 To 10000, 1 To 1)
    Dim i As Integer, j As Integer, k As Integer
    arr = Range("A1:D17").Value
    k = 1
    For i = 1 To UBound(arr, 1)
        For j = 1 To UBound(arr, 2)
            If arr(i, j) < 0 Then
                arr_t(k, 1) = arr(i, j)
                arr(i, j) = 0
                k = k + 1
            End If
        Next j
    Next i
    Range("G1:J17").ClearContents
    Range("G1:J17") = arr
    Range("M:M").ClearContents
    Range("M1").Resize(k, 1) = arr_t
End Sub
D15兰江自由鱼_13课作业.rar (9.84 KB, 下载次数: 2)

评分

参与人数 1金币 +9 收起 理由
兰色幻想 + 9 答案正确

查看全部评分

回复

使用道具 举报

发表于 2012-4-28 22:28 | 显示全部楼层
  1. Sub test()

  2. Dim arr, arr1(1 To 10000, 1 To 1)

  3. Dim m As Integer, n As Integer, k As Integer

  4. k = 0

  5. arr = Sheets("Sheet1").Range("A1").CurrentRegion

  6. For m = 1 To UBound(arr, 2)

  7.     For n = 1 To UBound(arr, 1)
  8.         
  9.         If arr(n, m) < 0 Then
  10.         
  11.             k = k + 1
  12.         
  13.             arr1(k, 1) = arr(n, m)
  14.         
  15.             arr(n, m) = 0
  16.                     
  17.         End If
  18.    
  19.     Next n

  20. Next m

  21. Range("g1").Resize(UBound(arr, 1), UBound(arr, 2)) = arr

  22. Range("m1").Resize(k, 1) = arr1

  23. End Sub
复制代码
13课作业.rar (10.01 KB, 下载次数: 2)

评分

参与人数 1金币 +9 收起 理由
兰色幻想 + 9 答案正确

查看全部评分

回复

使用道具 举报

发表于 2012-4-29 11:14 | 显示全部楼层
b11:yijundanny                       

13课作业.rar

11.93 KB, 下载次数: 10

评分

参与人数 1金币 +8 收起 理由
兰色幻想 + 8 答案正确

查看全部评分

回复

使用道具 举报

发表于 2012-4-29 11:14 | 显示全部楼层
Sub aa()
Dim m, n, i As Long
Dim arr, arr1()
Dim str As String
arr = Range("a1:d17")
For m = 1 To UBound(arr)
For n = 1 To 4
If arr(m, n) < 0 Then
ReDim Preserve arr1(0, i)
  str = arr(m, n)
arr1(0, i) = arr(m, n)
  arr(m, n) = 0
   i = i + 1
  End If
  Next n
  Next m
  Range("g1").Resize(UBound(arr), 4) = arr
  Range("m1").Resize(i) = Application.Transpose(arr1)
End Sub

13课作业.rar

8.24 KB, 下载次数: 4

评分

参与人数 1金币 +8 收起 理由
兰色幻想 + 8 答案正确

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-27 22:41 , Processed in 0.458568 second(s), 22 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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