首页 > 解决方案 > Excel VBA中结合ListBox,选择大小写和范围

问题描述

我创建了一个宏,它为不同的州选择不同的商品价格(因为税收)。为此,我使用了一个包含可能状态的 ListBox 的用户窗体。然后,我放置了一个 Select Case 以从正确的列中提取值。

但是,它似乎不理解我试图使用的范围变量......这是我的代码示例。

首先,我用我正在销售的项目声明 Range 变量,然后用我的所有状态的列表框提示用户表单。

Dim Items As Range
Set Items = Range("I9").End(xlDown)
Set Items = Range(Items, Items.End(xlDown))

UserForm1.Show

在用户窗体中,我放置了一个命令按钮以在单击时执行,它应该根据状态偏移“项目”范围。

Select Case Me.ListBox1
    Case "NY"
        Set State = Items.Offset(0, 6)
    Case "CA"
        Set State = Items.Offset(0, 7)
    End Select
Unload UserForm1

...那是我收到错误消息的时候:

运行时错误“1004”:

应用程序定义或对象定义的错误

有人可以帮我理解为什么我不能抵消我之前声明的范围吗?

标签: excelvbalistboxoffsetuserform

解决方案


推荐阅读