Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
12
返回列表 发新帖
楼主: ht094156

[已解决]求一个当某个单元格有数据时弹出一个提示框

[复制链接]
 楼主| 发表于 2014-5-17 11:05 | 显示全部楼层
冥王 发表于 2014-5-17 10:42
做成VBA当然是可以的   但VBA不是最好的选择  你的文件还要另存为xlsm或xls格式的  另外别人的电脑上不一定 ...

你好,帮我看一下9楼的问题吧,对VBA真的完全不懂
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
回复

使用道具 举报

发表于 2014-5-17 11:44 | 显示全部楼层
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells(1, 1).Column <> 12 Then Exit Sub
Dim c As Range
For Each c In Target
    If c.Column = 12 Then
        If c.Value = "" Then
            c.Offset(0, 1).Value = ""
        Else
            c.Offset(0, 1).Value = Format(Now, "yyyy-mm-dd hh:mm:ss")
        End If
    End If
Next
End Sub
回复

使用道具 举报

发表于 2014-5-17 11:46 | 显示全部楼层
回复

使用道具 举报

发表于 2014-5-17 11:48 | 显示全部楼层
9楼代码的意思是
  1. Private Sub Worksheet_Change(ByVal Target As Range)                     '工作表change事件程序
  2. If Target.Cells(1, 1).Column <> 1 Then Exit Sub                         '如果 Target.Cells(1,1)列数不为1 则执行 退出程序
  3.     Dim c As Range                                                       '定义变量c为单元格类型
  4.     For Each c In Target                                                
  5.        If c.Column = 1 Then                                              '如果c的列数为1 则执行下面代码
  6.           If c.Value = "" Then                                           '如果c的值为空则执行下面代码
  7.              c.Offset(0, 1).Value = ""                                   'c向右偏移1列的单元格值为空
  8.              Else                                                        '否则
  9.              c.Offset(0, 1).Value = Format(Now, "yyyy-mm-dd hh:mm:ss")   'c向右偏移1列的单元格值为当前日期时间,数据格式设置为"yyyy-mm-ddhh:mm:ss"
  10.           End If                                                         
  11.        End If                                                            
  12.     Next                                                                 '循环
  13. End Sub                                                                 '结束事件程序
复制代码
回复

使用道具 举报

 楼主| 发表于 2014-5-17 12:05 | 显示全部楼层
su45 发表于 2014-5-17 11:44
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells(1, 1).Column  12 Then Exit Sub
...

谢谢,好了
回复

使用道具 举报

 楼主| 发表于 2014-5-17 12:06 | 显示全部楼层
冥王 发表于 2014-5-17 11:48
9楼代码的意思是

你真是学得很精,谢谢了,现在很明白
回复

使用道具 举报

发表于 2014-12-17 16:14 | 显示全部楼层
学习了
回复

使用道具 举报

发表于 2017-2-18 11:30 | 显示全部楼层

你好,请问你这个是怎么做的?可以告诉我么,O(∩_∩)O谢谢。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-1 07:59 , Processed in 0.416898 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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