Excel 多选实现

代码

复制代码
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngDV As Range
Dim oldVal As String
Dim newVal As String
If Target.Count > 1 Then GoTo exitHandler

On Error Resume Next
Set rngDV = Cells.SpecialCells(xlCellTypeAllValidation)
On Error GoTo exitHandler
If rngDV Is Nothing Then GoTo exitHandler
If Intersect(Target, rngDV) Is Nothing Then
   'do nothing
Else
  Application.EnableEvents = False
  newVal = Target.Value
  Application.Undo
  oldVal = Target.Value
  Target.Value = newVal
  //在第几列写几
  If Target.Column = 5 Then
    If oldVal = "" Then
      Else
      If newVal = "" Then
        Else
        If InStr(oldVal, newVal) > 0 Then
        Target.Value = oldVal
        Else
      Target.Value = oldVal & ", " & newVal
      End If
        End If
    End If
  End If
End If

exitHandler:
Application.EnableEvents = True
End Sub

设置单选数据

代码粘贴即可

相关推荐
SimonKing3 分钟前
Apache Commons Math3 使用指南:强大的Java数学库
java·后端·程序员
渣哥4 分钟前
Java 集合迭代中的 fail-fast 与 fail-safe 机制详解
java
帧栈7 分钟前
我的创作纪念日
java
irving同学4623816 分钟前
TypeORM 列装饰器完整总结
前端·后端·nestjs
彭于晏爱编程19 分钟前
你真的了解 Map、Set 嘛
前端
崔璨22 分钟前
详解Vue3的响应式系统
前端·vue.js
摸鱼的鱼lv23 分钟前
🔥 Vue.js组件通信全攻略:从父子传值到全局状态管理,一篇搞定所有场景!🚀
前端·vue.js
IT_陈寒34 分钟前
Java性能优化:10个让你的Spring Boot应用提速300%的隐藏技巧
前端·人工智能·后端
bug攻城狮41 分钟前
Spring Boot Banner
java·spring boot·后端
whysqwhw1 小时前
Hippy 跨平台框架扩展原生自定义组件的完整实现方案对比
前端