分享

Excel vba双击单元格代码

 觅书时代 2021-04-10

  为什么要使用vba双击单元格,那是因为Excel中的数据,通过复制粘贴过来以后,不会马上变成所设置的单元格的数据类型,而是要通过双击才能变成Excel所需要的数据。

  就比如说,身份证中提取过来的出生年月等数据,有时候会多出0,比如,9月,自然是以09来表示了,但是,我们需要的是9而不是09,这个时候,通过双击该单元格之后,数据就自然会变成9而不是09了,因此,在这种情况下,特别需要双击这个动作。

  但是,万一需要双击的单元格的数量相当的多,我们通过双击来完成,那么,会花费很多的时间和精力的。

  然而,要想通过其它方式来实现,是很困难的,就连通过VBA都难于实现,因此,我们得找到突破点才能实现双击动作。

  方法是有的,那就是,根据F2和Enter键来完成。大家都知道,F2功能是进入到单元格的编辑状态,而回车键Enter是让光标移动到下一个单元格,所以,先让单元格进入到F2编辑状态,再通过Enter键的操作,就能完成双击单元格的目的。

  通过VBA来完成这两种动作,可使用如下的代码:

  ThisWorkbook.Worksheets(1).Cells(行, 列).Select
  Application.SendKeys '{F2}'

  如上代码是给某单元格进入编辑状态的代码,下面再配合回车键即可。如下代码

  ThisWorkbook.Worksheets(1).Cells(行, 列).Select
  Application.SendKeys '{F2}'
  Application.SendKeys '{Enter}'

  通过这些基本的也是重要的代码,可解决单元格双击问题,如果单元格相当的多,可借助循环来实现,如下代码便是:

  For j = 1 To Sheet2.UsedRange.Rows.Count
  ThisWorkbook.Worksheets(1).Cells(j, 3).Select
  Application.SendKeys '{F2}'
  Application.SendKeys '{Enter}'
     Next j

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多