Tag: list

通过VBA下拉列表进行迭代

我有三个下拉validation列表,我试图编写一些代码,遍历所有可用的“pipe理方法”排列。 我可以找出遍历一个列表的第一步(例如通过Excel下拉列表/validation列表和其他列表迭代 ),但是我无法弄清楚如何通过其中的三个列表。 理想情况下,即使增加了更多的选项,我也希望能够以一种可行的方式编写。 为了达到这个目的,我想你需要一种方法来计算每个列表中有多less个选项,然后从0-n开始迭代。 任何帮助将非常感激。 Sub LoopThroughList() Dim Dropdown1, Dropdown2, Dropdown3 As String Dim Range1, Range2, Range3 As Range Dim option1, option2, option3 As Range ' *** SET DROPDOWN LOCATIONS HERE *** ' *********************************** Dropdown1 = "C6" Dropdown2 = "D6" Dropdown3 = "E6" ' *********************************** ' *********************************** Set Range1 = Evaluate(Range(Dropdown1).Validation.Formula1) Set Range2 = […]

使用VBA和列表复制粘贴

我对VBA相当陌生,找不到解决我的后续问题的正确方法。 我有一个Excel工作簿5工作表。 最后3张工作表中充满了数据,而第一张工作表是其中最后3张工作表名称的列表。 我希望当我在列表上select其中一个工作表的名称时,它被粘贴到第二个空的工作表上。 比方说,我select列表中的工作表4,工作表2现在是工作表4的复制粘贴。

在Excel VBA中使用列表

使用Excelmacros(VBA)我将下面的公式插入到工作表中。 在后面的代码中,我粘贴公式作为值。 Firstrow = 2 Lastrow = .Cells(.Rows.Count, "D").End(xlUp).Row With .Range(.Cells(Firstrow, "A"), .Cells(Lastrow, "A")) .Formula = "=IF(ISERROR(VLOOKUP(D2,Codes!$A$1:$A$14,1,FALSE))=TRUE,""YES"",""NO"")" End With 是否有一个更好的方法只是答案是或否input列A中的单元格。我希望查找列表(代码!$ A $ 1:$ A $ 14)是在macros而不是其中一个工作表。 预先感谢您的帮助,您可能会发送我的方式! 约旦。

如何将excel文件中的特定数据附加到python列表中?

我有导入一个Excel文件。 excel文件有这样的2行5列: Weights 1 5 9 8 Criteria Number 38 89 8 56 excel_file = tkFileDialog.askopenfilename(filetypes=[('excelfile','*.xlsx')],title='Choose a .xlsx file') n_crit = [] workbook = xlrd.open_workbook(excel_file) sheet = workbook.sheet_by_index(0) data = [] for r in range(sheet.nrows): sublist = [] for c in range(sheet.ncols): if r == "Weights": sublist.append(sheet.cell_value(r,c)) data.append(sublist) print data 我想追加到Excel文件中的数据列表数据。 如果任何列中的第一个单元格是Weights,那么它会将除了第一列值(权重)之外的所有权重行中的数字附加到数据列表中: data = [[1 […]

创build多个数据validation列表,而不参考相同的范围EXCEL VBA

我在Excel VBA中创build一个macros,在指定的单元格中创build一个数据validation列表。 程序然后提示用户input包含数据validation列表内容的单元格。 然后包含列表内容的相同行将被隐藏起来。 但是,当我多次尝试重新运行macros时,每次为内容select新的范围时,每个进程列表都会引用此范围。 我不想要这样的事情发生。 我写了这行代码来防止这种情况: For Each nm In ThisWorkbook.Names strRngNumLbl = strRngNmLbl + 1 Next nm strRange = strRange & strRngNumLbl 其中strRng是添加到数据validation时要引用的范围的名称。 但是,由于某些原因,这是行不通的。 我认为这将工作,因为它会创build每个范围的独立名称添加到列表。 但它不… 这是整个代码: Sub CreatDropDownList() Dim strRange As String Dim celNm As Range Dim celNm2 As Range 'use only if necessary Dim celRng As Range Dim strRngNumLbl As Integer […]

将一个列表中的项目与第二个列表中的相应项目进行比较

我已经被问及在工作中一个快速的方法来validationExcel中的数据列表,但是通过嵌套的IF做一些太复杂的事情,所以我试图通过一个macros来实现。 有关数据的背景位: 我们开办课程,每门课程都有相应的插件。 人们必须select2个课程,这意味着2个相应的附加组件。 在Excel中的每一行中,2个课程在F和G列,相应的插件在H和I列。 问题是H和I列中的数据不一定是“正确的”顺序 – 列F中的课程的附加内容可能在列I中的一行中,列H中的另一个(和与G列的附加组件相同) 第二张表格中列出哪些附加项对于哪些课程是正确的(列A具有课程并且列B具有匹配的附加项)。 什么是最好的/最简单的方法来突出哪些行是正确的,哪些不是? 如果需要,我可以上传一个小的匿名文件样本到Dropbox,但是快速的数据布局如下: | 1st Course Choice | 2nd Course Choice | 1st Add-on | 2nd Add-on | Result ————————————————————————— | Subject 1 | Subject 2 | Add-on 1 | Add-on 2 | Correct | Subject 2 | Subject 1 | Add-on 1 | Add-on 2 | […]

如何在VBA中重现Collection示例?

我想在Excel中的不同文件中读取大量string,并使用它们创build一个组。 如果我理解正确,因为我不知道有多less个string,最好使用集合而不是数组。 我只是想现在重现这个例子来学习如何使用集合。 ' Create a list of strings. Dim salmons As New List(Of String) salmons.Add("chinook") salmons.Add("coho") salmons.Add("pink") salmons.Add("sockeye") ' Iterate through the list. For Each salmon As String In salmons Console.Write(salmon & " ") Next 'Output: chinook coho pink sockeye 我没有修改任何东西,它是给我的 编译错误:预期:语句结束 一张纸条说 有关本主题中的示例,请包括System.Collections.Generic和System.Linq命名空间的Imports语句。 我做到了,问题依然存在。 Imports System.Collections.Generic Imports System.Linq 我错过了什么?

VBA或Excel最大值列表

首先,不好意思,如果以前有过这个问题,但是我没有find任何能解决我的问题的东西。 我有以下数据: System | Priority —————— System1 | 3 —————— System2 | 4 —————— System3 | 5 —————— System1 | 6 —————— System2 | 2 —————— System3 | 9 —————— 我想创build这个新的列: System | Priority | MaximumPriority ———————————— System1 | 3 | 6 ———————————— System2 | 4 | 4 ———————————— System3 | 5 | 9 ———————————— […]

随机项目从一个列表使用多个条件

我使用下面的公式从一个列表中输出一个随机的项目,并以某些因素为条件。 在这个例子中,学生姓名在A列,考试成绩在B列。随机select的学生的条件是他或她的考试成绩超过80%: {=INDEX(Database!A1:A100,SMALL(IF(Database!B1:B100>=80%,ROW(Database!A1:A100)-MIN(ROW(Database!A1:A100))+1),RANDBETWEEN(1,COUNTIF(Database!B1:B100,">=80%"))))} 除了这些专栏之外,我还有C列的教育水平(选项是小学,高中和大学)。 如何修改上述公式,输出一个随机的学生条件的testing成绩超过80%,大学教育?

在python中使用xlrd从xls中提取数据

我试图从一个.xls文件中提取数据并创build一个列表,但是我得到的列表是[u'elem1', u'elem2', u'elem3'] ,但是如果我单独打印,我会得到: elem1 elem2 elem3 你是什​​么东西,如何去除它? 这是我的代码… from xlrd import open_workbook xls=open_workbook('name.xls') for sheets in xls.sheets(): list1=[] for col in range(sheets.ncols): for rows in range(sheets.nrows): list1.append(sheets.cell(rows, col).value) print(list1) for i in list1: print(i)