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

设置单选数据

代码粘贴即可

相关推荐
乌夷9 小时前
Vue.js 3 的设计思路
前端·javascript·vue.js
剑挑星河月10 小时前
234. 回文链表
java·数据结构·算法·leetcode·链表
丨我是张先生丨10 小时前
英语单词 Web Page
前端·css·css3
plainGeekDev10 小时前
Gradle 写法 → Kotlin DSL
android·java·kotlin
随风一样自由10 小时前
【前端+Vitest测试框架】Vitest | Playwright | WebdriverIO | Preview
前端·前端框架·可用性测试
RainCityLucky10 小时前
Java Swing 自定义组件库分享(十三)
java·笔记·后端
无限的鲜花18 小时前
反射(原创推荐)
java·开发语言
IT二叔19 小时前
Java项目部署-03-teamcity-cicd-docker镜像流水线方式部署
java·ci/cd·持续部署
前端之虎陈随易19 小时前
编程语言级别的Skill市场,AI Agent 的未来形态
前端·vue.js·人工智能·typescript·node.js
一路向北he19 小时前
字节钢铁军团--“提供情境,而非控制”
java·开发语言·前端