Tag: treeview

将命名范围结构转移到树视图(treestructure)

我有一个Excel工作表,有许多命名的范围 。 现在我想要树视图中所有命名范围的分层结构 (使用VSTO / C#)。 什么是parsing命名的范围层次结构(范围可以再次包含范围,所以有父/子关系)的最好和有效的方式,并且转移到树视图(可能具有在Excel和树视图表示之间的XML结构 )。

Treeview和滚动条交互使用Excel VBA 2003

目前我正在使用excel 2003在excel仪表板上进行项目工作 我有这个自定义类创build并拥有这个类的集合。 Dim classCollection as Collection CustomClass1的骨架结构如图所示 Dim objName as string Dim subClass as Collection Public Sub CreateSubClass() Dim cClass as CustomClass1 'manipulation and stuff goes here subClass.Add cClass end Sub 正如你所看到的,还有一个自己的类的子集合,因为我想进一步细分更多的属性和类模块的东西 以前我能够显示收集到没有任何子集合的单元格与滚动条,这也控制集合的索引,如下所示(抱歉的粗略绘图,这是最好的,我可以描绘为我不能张贴图片) ^ obj20 l obj21 l obj22 l obj23 v obj24 滚动条更改编码如下 Private Sub ScrollBar1_Change() Application.ScreenUpdating = False Dim classObject As CustomClass1 […]

通过子节点循环的Excel VBA TreeView

我正在使用Excel TreeView对象。 我没有问题循环通过父节点,但不能让它与子节点的工作。 这是我如何做父节点。 这工作正常。 Total_Rows =10 For I = 1 To (Total_Row – 2) 'subtract two for the headers If TreeView1.Nodes(I).Checked = True Then Range("Nodes_Checked")(I + 2) = "x" End If Next I 这是我如何做的与子节点。 这似乎只检查第一个子节点,而不是所有的节点。 For i = 1 To (2) 'subtract two for the headers If TreeView1.Nodes(i).Child.Checked = True Then MsgBox "The child […]

通过复制/粘贴将Python的PyQt QTreeView数据从Python复制到Excel?

有没有一种方法从PyQT的QTreeView – 或QTableView复制使用传统的Ctrl + C / Ctrl + V机制的数据,或者我需要写一个明确的模块,从应用程序数据写入一个CSV文件使用类似xlrd? 我现在看到的效果是Ctrl + C / Ctrl + V只需要1个项目,而不是一堆,即使我编码select模式采取多项select。

使用列标题和子标题填充TreeView

我是新的树视图控制,并希望填充我的TreeView(两列)与标题列作为父节点和子标题为子节点,如下所示: 我已经开始使用下面的代码,但我坚持: Sub UserForm_Initialize() Dim WB As Workbook Dim WS As Worksheet Dim HeaderRng As Range Dim rng As Range Dim rCell As Range Dim i As Long Dim Nod As Node Set WB = ThisWorkbook Set WS = WB.Worksheets("Data") Set HeaderRng = WS.Range("A1:M1") With Me.TreeView1.Nodes .Clear For Each rCell In HeaderRng .Add Key:=rCell.Value, Text:=rCell.Value […]

excel表格treeview中的子节点与父节点处于同一级别

我希望有人能帮助我,因为我一直坚持了好几天。 我有一个工作表,我想在树视图中可视化。 因为这是我的第一个问题,我的名声还不够高,所以图片是以链接的forms提供的。 img的工作表来可视化 'i:loop through objects 'j:loop through object childs 'counter: keep track of how many childs processed For i = 1 To 5 Set parentCell = rng.Offset(counter, 0) 'parent values strParent = parentCell.Value 'parent values ' Build the treeview for both the Left and the right side of the screen trvLeft.Nodes.Add Key:=strParent, Text:=strParent […]

TreeNode导出为Excel

我正试图导出一个treeview有几个节点,子节点要优秀。 目前的进展是下面的代码。 我怎样才能提取所有的节点和孩子节点到独立的列? string mydocpath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); using (StreamWriter sw = new StreamWriter(mydocpath + @"\MaterialList.csv")) foreach (TreeNode node in treeView1.Nodes) { sw.WriteLine(node); }

你如何从工作表中填充形状的图像列表?

我希望从工作表中创build一个包含图像和数据的TreeView(每行都有一个零件的名称,下一个上面的程序集和一个由用户填充的图标)。 我终于设法得到树视图正确填充,并包括来自外部来源的图像(基于来自各种来源的代码,只是我自己的一点点)。 设置图像列表并将其分配给树视图对我来说仍然是一个谜,但它的工作。 缺less的是从工作表中获取图片,并从图片列表中,而不是从外部来源((使用iml.ListImages.Add 1, "img1", LoadPicture("C:\Temp\red.jpg") )。我读了几十篇关于它的文章没有用,有几个地方提到,但是是一个deadend。另外我读过的另一个select涉及复制到剪贴板和粘贴到其他地方,但它涉及很多的代码,似乎超出我的能力,所以我还没有尝试过呢。 我可以使用Sheet1.Shapes(1)或类似的.Type (其结果是“13”)或.Name (例如返回“图片1”)或.TopLeftCell.Address (它返回“$ C $ 1”例如)等等。所以我知道我有权访问它们,并引用了正确的对象。 当我尝试使用iml.ListImages.Add 1, "img1", Sheet1.Shapes(1)我得到一个“无效图片”错误。 当我尝试使用iml.ListImages.Add 1, "img1", Sheet1.Shapes(1).Picture我得到一个“对象不支持此属性或方法”的错误。 当我尝试使用iml.ListImages.Add 1, "img1", Sheet1.Shapes(1).CopyPicture我得到一个“types不匹配”错误。 我不知道还有什么可以尝试的,还有其他什么地方看。 请帮忙。 编辑:所有这一切发生在一个用户窗体。

如何通过Excel数据透视表的次要(子)字段循环?

我的最终目标是填充一个表格TreeView与我的数据透视表结果,这意味着我将有父节点和子节点。 比方说,我有以下数据透视表结果(从一个表) FirstNames [+] Bill [+] Bob [-] Charles Charles Jameson Charles Johnson Charles Smith [+] James [+] Zachary 当我通过myPivotTable.PivotFields("FirstNames").PivotItems循环时,我遍历“Bill”,“Bob”,“Charles”,“James”,“Zachary”。 这给了我我的父节点,但我也希望我的孩子节点(eg "Charles Jameson", "Charles Johnson", and "Charles Smith"). 我怎样才能循环通过子领域?

treeview节点select总是返回树的第一个节点,而不是选定的一个

我正在C#Project [ Windows窗体应用程序 ]上工作,以更新从Excel表格[xls]单元[行我,列3]值的树视图节点,而在selecttreenode时,它应该更新相应的列4值[行i列4] 。 对我来说,Treenode是成功填充的,但是在selecttreenode时,它总是显示treenode的第一个元素[Not selected one]。 从Excel填充Treenode如下:[更新第3列元素中的子节点[第2列包含父节点名称,第3列具有子节点名称],如果第2列值与父节点名称[我的模块]相同,则更新子节点父节点。] for (int i = 0; i < worksheet.UsedRange.Rows.Count; i++) { string mynode = ((Excel.Range)worksheet.Cells[i + 1, 3]).Value2.ToString(); string mynode2 = ((Excel.Range)worksheet.Cells[i + 1, 2]).Value2.ToString(); if (mynode2 == mymodule) { TreeNode ChildNode = ParentNode.Nodes.Add(mynode); ChildNode.Text = mynode; } } 在select子节点时,它总是给第一个父节点。 而不是选定的节点。 for (int i = 0; i […]