1

我是 DataNitro 的新手,也是 Python 初学者,目前正在探索使用 DataNitro 进行 Excel 电子表格编程的无限可能性。

我想连接 3 个不同的列(A、B 和 C),并希望生成 3 与它们的所有可能组合。

   A                      B               C

172-000072-00   523-000072-00   120-000172-01
172-000072-04   523-000072-01   120-000172-06
172-000072-01   523-000072-02   120-000172-07
172-000072-05   523-000072-03   120-000172-08
172-000072-08   523-000072-04   120-000161-01
172-000072-09   523-000072-05   120-000161-06
                523-000072-06   120-000161-07
                523-000072-07   120-000161-08

一种组合可以是“172-000072-00 / 523-000072-00 / 120-000172-01”

将有6 X 8 X 8 = 384 种组合。

如何使用 DataNitro 在 Excel 中生成它?

我试图为这个问题制作自己的实现 -

def conctn():
    CellRange("E1:E384").value = 
[for x in CellRange("A1:A5"):
    for y in CellRange("B1:B8"):
        for z in CellRange("C1:C8"):
            return CellRange(z).value

             return CellRange(y).value + CellRange(z).value

     return CellRange(x).value + CellRange(y).value + CellRange(z).value]
4

1 回答 1

1

这应该有效:

to_write = []

for x in CellRange("A1:A5").value:
    for y in CellRange("B1:B8").value:
        for z in CellRange("C1:C8").value:
            to_write.append(' / '.join([x, y, z]))

Cell("E1").vertical = to_write

这是这里发生的事情:

第一行是创建一个可用于存储所有排列的列表,最后一行是使用“vertical”关键字将此列表写入 Excel。此关键字是从给定单元格开始写入列的快捷方式,而无需弄清楚它有多长。

三个“for”循环遍历变量的每个组合。

"' / '.join([x, y, z])" 获取一个字符串列表 ("[x, y, z]") 并将它们连接成一个字符串,其中 " / " 作为分隔符。

于 2014-03-21T04:19:26.253 回答