Excel(VBA)下拉列表单个单元格中的多个值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Excel(VBA)下拉列表单个单元格中的多个值相关的知识,希望对你有一定的参考价值。
Selecting different values from a data validation drop down list will populate the same cell, i.e. it will create a concatenating list separated by commas.Amend the "If Target.Column" values to set the columns this applies to.
Private Sub Worksheet_Change(ByVal Target As Range) ' Developed by Contextures Inc. ' www.contextures.com 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 = 3 Then If oldVal = "" Then 'do nothing Else If newVal = "" Then 'do nothing Else Target.Value = oldVal _ & ", " & newVal ' NOTE: you can use a line break, ' instead of a comma ' Target.Value = oldVal _ ' & Chr(10) & newVal End If End If End If End If exitHandler: Application.EnableEvents = True End Sub
以上是关于Excel(VBA)下拉列表单个单元格中的多个值的主要内容,如果未能解决你的问题,请参考以下文章
VBA excel Target.Address =单元格范围
Excel VBA - 将多个用户表单复选框值写入单个单元格