Excel精英培训网

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

[已解决]两个宏合起来用出现“运行时错误‘13’”

[复制链接]
发表于 2009-12-13 19:19 | 显示全部楼层 |阅读模式
为什么两个宏分开用的时候没问题,合起来用就出现“运行时错误‘13’”求老师帮忙。 TL2idWw3.rar (384.78 KB, 下载次数: 14)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2009-12-13 20:05 | 显示全部楼层
回复

使用道具 举报

发表于 2009-12-13 20:23 | 显示全部楼层    本楼为最佳答案   

可以把第一段改成:

Private Sub Worksheet_Change(ByVal Target As Range)
'把数据写入现金支票
If Target.Address = "C$4$" Or Target.Address = "D$4$" Then
    If Target.Value <> "" Then
        Sheet1.[D12].Value = Sheet5.[D4].Value
        Sheet1.[D13].Value = Sheet5.[C4].Value & "拆迁差价款"
    End If
End If
End Sub

其实不用这么麻烦,直接把:

        Sheet1.[D12].Value = Sheet5.[D4].Value
        Sheet1.[D13].Value = Sheet5.[C4].Value & "拆迁差价款"

写在下面的代码里就行了。

Private Sub CommandButton1_Click()
'开始记录数据
ax = 3
aaxx = 1
Do While Not (IsEmpty(Sheets("差价款打印记录").Cells(ax, 2).Value))
ax = ax + 1
aaxx = aaxx + 1
Loop
'执行以上4行程序,确定"差价款打印记录"工作表第3行从第2列起到第一个空行的行数ax.
Sheets("差价款打印记录").Cells(ax, 1) = aaxx
Sheets("差价款打印记录").Cells(ax, 2) = (Sheets("房屋拆迁差价款").Cells(1, 9) & "-" & Sheets("房屋拆迁差价款").Cells(1, 10) & "-" & Sheets("房屋拆迁差价款").Cells(1, 11))
'将表外房屋拆迁差价款坐标为(行2,列3)单元格内容转入明细表坐标为(ax, 2) 的单元格,以下按顺序相同
Sheets("差价款打印记录").Cells(ax, 3) = Sheets("房屋拆迁差价款").Cells(4, 1)
Sheets("差价款打印记录").Cells(ax, 4) = Sheets("房屋拆迁差价款").Cells(4, 3)
Sheets("差价款打印记录").Cells(ax, 5) = Sheets("房屋拆迁差价款").Cells(4, 4)
Sheets("差价款打印记录").Cells(ax, 6) = Sheets("房屋拆迁差价款").Cells(2, 6)
Sheets("差价款打印记录").Cells(ax, 7) = Sheets("房屋拆迁差价款").Cells(4, 8)
Sheets("差价款打印记录").Cells(ax, 8) = Sheets("房屋拆迁差价款").Cells(2, 1)
Sheets("差价款打印记录").Cells(ax, 9) = Sheets("房屋拆迁差价款").Cells(4, 2)
'记录数据结束
'打印
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
        Sheet1.[D12].Value = Sheet5.[D4].Value
        Sheet1.[D13].Value = Sheet5.[C4].Value & "拆迁差价款"

' 删除
    Range("A2:C2").Select
    Selection.ClearContents
    Range("F2:H2").Select
    Selection.ClearContents
    Range("A4:F4").Select
    Selection.ClearContents
    Range("H4:H4").Select
    Selection.ClearContents
'保存数据结束
ActiveWorkbook.Save
End Sub

回复

使用道具 举报

发表于 2009-12-14 05:57 | 显示全部楼层

学习[em02][em02]
回复

使用道具 举报

 楼主| 发表于 2009-12-14 19:26 | 显示全部楼层

QUOTE:
以下是引用雨狐在2009-12-13 20:23:00的发言:

可以把第一段改成:

Private Sub Worksheet_Change(ByVal Target As Range)
'把数据写入现金支票
If Target.Address = "C$4$" Or Target.Address = "D$4$" Then
    If Target.Value <> "" Then
        Sheet1.[D12].Value = Sheet5.[D4].Value
        Sheet1.[D13].Value = Sheet5.[C4].Value & "拆迁差价款"
    End If
End If
End Sub

其实不用这么麻烦,直接把:

        Sheet1.[D12].Value = Sheet5.[D4].Value
        Sheet1.[D13].Value = Sheet5.[C4].Value & "拆迁差价款"

写在下面的代码里就行了。

Private Sub CommandButton1_Click()
'开始记录数据
ax = 3
aaxx = 1
Do While Not (IsEmpty(Sheets("差价款打印记录").Cells(ax, 2).Value))
ax = ax + 1
aaxx = aaxx + 1
Loop
'执行以上4行程序,确定"差价款打印记录"工作表第3行从第2列起到第一个空行的行数ax.
Sheets("差价款打印记录").Cells(ax, 1) = aaxx
Sheets("差价款打印记录").Cells(ax, 2) = (Sheets("房屋拆迁差价款").Cells(1, 9) & "-" & Sheets("房屋拆迁差价款").Cells(1, 10) & "-" & Sheets("房屋拆迁差价款").Cells(1, 11))
'将表外房屋拆迁差价款坐标为(行2,列3)单元格内容转入明细表坐标为(ax, 2) 的单元格,以下按顺序相同
Sheets("差价款打印记录").Cells(ax, 3) = Sheets("房屋拆迁差价款").Cells(4, 1)
Sheets("差价款打印记录").Cells(ax, 4) = Sheets("房屋拆迁差价款").Cells(4, 3)
Sheets("差价款打印记录").Cells(ax, 5) = Sheets("房屋拆迁差价款").Cells(4, 4)
Sheets("差价款打印记录").Cells(ax, 6) = Sheets("房屋拆迁差价款").Cells(2, 6)
Sheets("差价款打印记录").Cells(ax, 7) = Sheets("房屋拆迁差价款").Cells(4, 8)
Sheets("差价款打印记录").Cells(ax, 8) = Sheets("房屋拆迁差价款").Cells(2, 1)
Sheets("差价款打印记录").Cells(ax, 9) = Sheets("房屋拆迁差价款").Cells(4, 2)
'记录数据结束
'打印
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
        Sheet1.[D12].Value = Sheet5.[D4].Value
        Sheet1.[D13].Value = Sheet5.[C4].Value & "拆迁差价款"

' 删除
    Range("A2:C2").Select
    Selection.ClearContents
    Range("F2:H2").Select
    Selection.ClearContents
    Range("A4:F4").Select
    Selection.ClearContents
    Range("H4:H4").Select
    Selection.ClearContents
'保存数据结束
ActiveWorkbook.Save
End Sub

把第一段改了,实现不了在差价款输入数据,现金支票自动写入。第二个方案成功了。谢谢你! B7uuLGry.rar (387.46 KB, 下载次数: 0)
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-29 11:17 , Processed in 0.301873 second(s), 8 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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