Excel精英培训网

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

[已解决]VBA根据输入内容设置框线

[复制链接]
发表于 2017-3-1 09:34 | 显示全部楼层 |阅读模式
本帖最后由 ckoeng 于 2017-3-1 11:02 编辑

111
aaa
啊啊啊
11a
aa1
啊啊1
11啊
aa啊
啊啊a
1a啊
 
 
 
 
 
 
 
 
 

如上表所示,excel单元格内输入内容,其组成为随机的中文、英文、数字及其各种组合(顺序也是随机的),现需求:
当单元格内输入的内容只有英文时,为单元格设置框线;若是其他情况,则为输入内容的单元格及下方的一个单元格同时设置框线
谢谢~{:011:}
最佳答案
2017-3-1 10:49
  1. Sub tt()
  2.     Dim cel As Range
  3.     For Each cel In [a1:j1]
  4.         x = cel.Text
  5.         For i = 1 To Len(x)
  6.             If Not Mid(x, i, 1) Like "[a-zA-Z]" Then Exit For
  7.         Next
  8.         If i > Len(x) Then r = 1 Else r = 2
  9.         cel.Resize(r).Borders.LineStyle = 1
  10.     Next
  11. End Sub
复制代码
发表于 2017-3-1 10:03 | 显示全部楼层
回复

使用道具 举报

发表于 2017-3-1 10:49 | 显示全部楼层    本楼为最佳答案   
  1. Sub tt()
  2.     Dim cel As Range
  3.     For Each cel In [a1:j1]
  4.         x = cel.Text
  5.         For i = 1 To Len(x)
  6.             If Not Mid(x, i, 1) Like "[a-zA-Z]" Then Exit For
  7.         Next
  8.         If i > Len(x) Then r = 1 Else r = 2
  9.         cel.Resize(r).Borders.LineStyle = 1
  10.     Next
  11. End Sub
复制代码

工作簿1.rar

8.73 KB, 下载次数: 10

回复

使用道具 举报

发表于 2017-3-1 11:10 | 显示全部楼层
  1. Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
  2.     On Error Resume Next
  3.     With CreateObject("vbscript.regexp")
  4.         .Global = True
  5.         .Pattern = "[A-Za-z]"
  6.         If Len(Target(1).Value) > 0 Then
  7.             If .Execute(Target(1).Value).Count = Len(Target(1).Value) Then
  8.                 Target(1).Borders.LineStyle = 1
  9.             Else
  10.                 Target(1).Resize(2).Borders.LineStyle = 1
  11.             End If
  12.         End If
  13.     End With
  14. End Sub
复制代码
新建 Microsoft Excel 工作表.rar (12.09 KB, 下载次数: 5)
回复

使用道具 举报

发表于 2017-3-1 11:11 | 显示全部楼层
啊。。。慢了
回复

使用道具 举报

 楼主| 发表于 2017-3-1 11:25 | 显示全部楼层
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 07:26 , Processed in 0.292751 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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