Tag: select case

Excel的VBA – 如果更深入的select案例不符合标准,避免再次input代码

我想知道是否有一个解决方法,不要重新input代码,如果更深入的select案件不符合条件。 我必须检查月份是否是下面所列的月份之一,如果是我必须检查当月的date是否符合标准。 如果当天不匹配任何情况,则必须运行的代码是在上述ELSE情况下的Select语句中设置的代码。 我知道解决这个问题的唯一方法是通过使用IF语句而不是嵌套的select case,并使用GO TO LABEL将我带回CASE ELSE语句,但看起来非常不经典。 有没有办法不重新input相同的代码在其他情况下,如果更深的select案例不符合条件? Select Case Month(Range("b" & Start)) Case 1 Case 4 Case 5 Case 6 Case 8 GiornoMese = listaattiva(j).Text & "/" & Month(Range("b" & Start)) & "/" & Year(Range("b" & Start)) Select Case Day(GiornoMese) Case 15 **HERE IF THE DAY IS NOT THE 15th CODE SHOULD JUMP […]

是否有可能根据表中的条目数来将案例添加到Select Case中?

最近我一直在使用Excel中的VBA, 作为我自己的一个小项目,我试图创造一个“从帽子上画出名字”的那种macros观。 我从生成一个随机数开始,然后从一个表(即ListObject)中select使用case语句select哪个条目。 与此相关的问题是,它只能工作的条目数总是相同的。 所以我的问题(可能是一个荒谬的)是:是否有可能生成一个dynamic的“select案例”块,块的情况下的数量是基于表中的条目数? 谢谢。 -Sean 编辑:澄清:我正在试图做的,正是这样的: 我生成一个随机数,我从1到n = 10 *(表项的数量)。 之后,我想在单元格中显示基于随机数的表项之一。 理想情况下,代码的工作方式与此类似: if i = 1 to 10 then choose event 1 if i = 11 to 20 then choose event 2 if i = 21 to 30 then choose event 3 … if i = (n-9) to n then choose event (n/10) […]

大小写select语句崩溃Excel

忍受我,我正在学习Excel VBA,因为我去借口任何狡猾的代码。 这一个刚刚难倒我 – 我敢肯定我错过了一些非常明显的东西,但我只是看不到它! 我试图从一个扩展的IF(工程)改进我的代码到一个select大小写调用预定义的macros。 下面的代码似乎运行,做我想要做的,但是当调用代码或描述macros的时候,“Microsoft Excel已停止工作”,然后崩溃Excel。 当调用Freetypemacros,我得到“没有足够的系统资源完全显示” 主要工作表代码 Private Sub Worksheet_Change(ByVal Target As Range) Dim OrderBox As String OrderBox = Range("E3") Select Case OrderBox Case "Order by Description" Call UnProtect(1234) Call Description Call Protect(1234) Case "Order by Code" Call UnProtect(1234) Call Code Call Protect(1234) Case "Free Type" Call UnProtect(1234) Call Freetype Call Protect(1234) […]

用户窗体input后重复macros

macros打开工作簿后,将查看单元格“C27”是否包含任何以下文本:位置1,位置2,位置3或位置4。 如果他们这样做,它将继续保存这些位置的模板的2个副本文件。 如果没有,则会打开一个用户窗体从一个combobox中select正确的位置。 如何重置UserFormclosures后的检查,我试图调用Auto_Open卸载后,但它没有工作。 macros Sub Auto_Open() With Range("B30") .Value = Time .NumberFormat = "h-mm-ss AM/PM" End With Dim FileName As String Dim FilePath As String Dim FileDate As String Select Case Range("C27").Value Case "Location1", "Location2", "Location3", "Location4" FilePath = "C:\Users\aholiday\Desktop\FRF_Data_Macro_Insert_Test" FileName = Sheets("Data").Range("C27").Text Application.DisplayAlerts = False ThisWorkbook.SaveAs FileName:=FilePath & "\" & FileName Dim FileCopyName […]

select案例不运行每个案件

我有一个excel文档中的select case函数不运行每个案件。 具体来说就是跳过12044-12053。 我不明白为什么不把所有的数据都对待。 Sub Main() Dim c As Range For Each c In Range("E2:E1000") Select Case UCase(c) Case "11001" c = "C. Matern" Case "11002" c = "C. Matern" Case "11004" c = "M. Jones" Case "11005" c = "J. Kimble" Case "11006" c = "A. McPike" Case "11007" c = "M. Jones" Case […]

select小于或等于的情况

VBA非常新,所以我试图通过创build一个税计算器macros来获得经验,但我不知道为什么值没有在正确的单元格中生成,或者如果这是甚至是最好的方式去纳税计算器。 Sub TaxCalculator() Dim AGI As Currency AGI = Range("AGI").Value Select Case AGI Case AGI <= Range("'Tax Bracket'!A2").Value Range("Net_Income").Value = AGI * (1 – Range("'Tax Bracket'!B2")) Range("Monthly_Net_Income").Value = Range("Net_Income") / 12 End Select End Sub 问题中的Excel文件的链接

VBA Select Case是多个标准

我有以下一段代码,想修改一下。 基本上每个case is我想检查次要标准。 例如, Case is = "Lottery"我想添加AND range("SalesChannel").value = "SMB" 。 然后我想复制,为每个案件使用不同的值(不SMB)。 这可以做到吗? Private Sub CommandButton1_Click() With LoginPassword.TextBox1.Value Select Case Me.TextBox1.Value Case Is = "Lottery" LoginPassword.Hide SMB_Login CalculateFinancials Case Is = "Charity" LoginPassword.Hide DCS_Login CalculateFinancials Case Is = "Curfew" LoginPassword.Hide Campaign_Login CalculateFinancials Case Is = "Europe" LoginPassword.Hide Eureka_Login CalculateFinancials Case Is = "Promo" LoginPassword.Hide […]

InStr没有find子string

我有以下代码: Columns("F:F").Select For Each cell In Selection Select Case cell Case InStr(1, cell, ",") <> 0 MsgBox ("found") Case IsEmpty(cell) Or Null MsgBox ("empty") Case Else Stop End Select Next 在F列中:FI具有以下顺序: "Marc Jacobs", "", "Renolds, Bob" InStr没有find任何适当的案例陈述。 对于“Marc Jacobs”,我得到了Case Else的电话(正确的电话) 对于“”,我得到的消息(应该是空的消息) 对于“Renolds,Bob”,我得到了Case Else调用(应该得到find的消息) 这里发生了什么?

select案例循环

我基于我在这里find的另一个问题build模Select Case循环(链接: Excel VBA Select Case Loop Sub )。 为了使它适用,我必须做的改变非常小,而且我也没有看到我出错的地方。 这是我的代码: Private Function getColor(ByVal MatVal As Range) As Integer Select Case MatVal Case 0 To 1 getColor = 9: Exit Function Case 1.01 To 3 getColor = 46: Exit Function Case 3.01 To 5 getColor = 27: Exit Function Case 5.01 To 10 getColor = […]

嵌套select案例的多个条件

情况:我有一个代码,通过工作表中的一些数据,并给予什么是在某个单元格粘贴到另一列(同一行)的东西。 例如:如果我的A5是“债券”,它连接A5和B5的内容并将其粘贴到J5。 Obs1:对于第一,第二,第三和第四列数据,有几十个子条件。 我到目前为止的尝试:我能够创build一个非常长的嵌套如果链和帐户的所有条件。 我也能够使用select案例来说明第一列的条件。 问题:现在我试图使用嵌套Select Case来解决这个问题(考虑到If链是庞大的,而且效率太高)。 问题是我无法正确说明多个条件的嵌套Select Case。 问题:在存在多个条件时,使用嵌套Select Case的最佳方法是什么? Obs2:从以前的研究中,我发现这里的post是关于嵌套的,特别是当存在真值或假值时。 这对我不起作用,因为每一层都有更多的条件。 代码1:这是我迄今为止使用Select Case: Function fxr2() Dim lRow As Long, LastRow As Long Dim w As Workbook Dim ws As Worksheet Set w = ThisWorkbook Application.ScreenUpdating = False Application.EnableEvents = False Application.Calculation = xlCalculationManual LastRow = Worksheets("Fixer").Cells(Rows.Count, "A").End(xlUp).Row For lRow = 7 To LastRow […]