Excel精英培训网

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

[已解决]请帮助修改:别人表中有三行数据就能保存三行数据,我粘贴修改后为什么只能存在一...

[复制链接]
匿名  发表于 2014-10-30 09:38 |阅读模式
谢谢老师关注,请帮助修改
最佳答案
2014-10-30 10:32
这个问题我也碰到过end方法返回的始终不对。
  1. Sub dybc()
  2.     Dim a, b, c As Integer
  3.     Dim v As Variant
  4.     Dim t As String
  5.     Application.ScreenUpdating = False
  6.     a = 5
  7.     Do While Len(Sheet2.Range("b" & a).Value)
  8.         a = a + 1
  9.     Loop
  10.     a = a - 1
  11. '    If Sheet2.[B13] = "" Then
  12. '        a = Sheet2.[B13].End(xlUp).Row
  13. '    Else
  14. '        a = 13
  15. '    End If
  16.     v = Sheet2.Range("B5:G" & a).Value
  17.     With Sheet9
  18.         b = .[D65536].End(xlUp).Row + 1
  19.         .Range("E" & b & ":J" & b + a - 5).Value = v
  20.         t = .Range("B" & b - 1)
  21.         If Format(Date, "yyyy-m-d") = t Then
  22.             c = Val(Right(.Range("C" & b - 1), 3)) + 1
  23.         Else
  24.             c = 1
  25.         End If
  26.         Sheet2.Range("B17 ") = "No." & Format(Date, "yyyymmdd") & Format(c, "000")
  27.         .Range("C" & b & ":C" & b + a - 5) = "No." & Format(Date, "yyyymmdd") & Format(c, "000")
  28.         .Range("B" & b & ":B" & b + a - 5) = Format(Date, "yyyy-m-d")
  29.         .Range("D" & b & ":D" & b + a - 5) = Sheet2.Range("E17")
  30.         .Range("K" & b).Value = Sheet2.Range("E14").Value
  31.         .Range("L" & b).Value = Sheet2.Range("D16").Value
  32.         .Range("K" & b & ":K" & b + a - 5).Merge
  33.         .Range("L" & b & ":L" & b + a - 5).Merge
  34.     End With
  35.     Sheet2.PrintOut
  36.     Application.ScreenUpdating = True
  37. End Sub
复制代码
用笨方法来判断的。

abc.zip

21.41 KB, 下载次数: 88

发表于 2014-10-30 10:32 | 显示全部楼层    本楼为最佳答案   
这个问题我也碰到过end方法返回的始终不对。
  1. Sub dybc()
  2.     Dim a, b, c As Integer
  3.     Dim v As Variant
  4.     Dim t As String
  5.     Application.ScreenUpdating = False
  6.     a = 5
  7.     Do While Len(Sheet2.Range("b" & a).Value)
  8.         a = a + 1
  9.     Loop
  10.     a = a - 1
  11. '    If Sheet2.[B13] = "" Then
  12. '        a = Sheet2.[B13].End(xlUp).Row
  13. '    Else
  14. '        a = 13
  15. '    End If
  16.     v = Sheet2.Range("B5:G" & a).Value
  17.     With Sheet9
  18.         b = .[D65536].End(xlUp).Row + 1
  19.         .Range("E" & b & ":J" & b + a - 5).Value = v
  20.         t = .Range("B" & b - 1)
  21.         If Format(Date, "yyyy-m-d") = t Then
  22.             c = Val(Right(.Range("C" & b - 1), 3)) + 1
  23.         Else
  24.             c = 1
  25.         End If
  26.         Sheet2.Range("B17 ") = "No." & Format(Date, "yyyymmdd") & Format(c, "000")
  27.         .Range("C" & b & ":C" & b + a - 5) = "No." & Format(Date, "yyyymmdd") & Format(c, "000")
  28.         .Range("B" & b & ":B" & b + a - 5) = Format(Date, "yyyy-m-d")
  29.         .Range("D" & b & ":D" & b + a - 5) = Sheet2.Range("E17")
  30.         .Range("K" & b).Value = Sheet2.Range("E14").Value
  31.         .Range("L" & b).Value = Sheet2.Range("D16").Value
  32.         .Range("K" & b & ":K" & b + a - 5).Merge
  33.         .Range("L" & b & ":L" & b + a - 5).Merge
  34.     End With
  35.     Sheet2.PrintOut
  36.     Application.ScreenUpdating = True
  37. End Sub
复制代码
用笨方法来判断的。
回复

使用道具 举报

匿名  发表于 2014-10-30 10:53
回复

使用道具

匿名  发表于 2014-10-30 11:04
您好,版主,我又遇到了新问题,您给的代码的确能保存多行,但是它同时也覆盖了上一次保存的数据,所以还请您再帮忙解决一下,拜托了
回复

使用道具

匿名  发表于 2014-10-30 11:04
您好,版主,我又遇到了新问题,您给的代码的确能保存多行,但是它同时也覆盖了上一次保存的数据,所以还请您再帮忙解决一下,拜托了
回复

使用道具

发表于 2014-10-30 11:14 | 显示全部楼层
您好,版主,谢谢您的答案,但同时我又遇到了一个新问题,还烦请帮助一下,就是您给的代码这固然解决了多行保存的问题,但是它却覆盖了以前的数据,请帮忙,多谢
回复

使用道具 举报

发表于 2014-10-30 12:42 | 显示全部楼层
lgbk 发表于 2014-10-30 11:14
您好,版主,谢谢您的答案,但同时我又遇到了一个新问题,还烦请帮助一下,就是您给的代码这固然解决了多行 ...

这个可以改,==
回复

使用道具 举报

发表于 2014-10-30 12:45 | 显示全部楼层
不会覆盖记录工作表里的原有数据呀。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 13:33 , Processed in 0.292284 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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