Tag: datanitro

使用Datanitro的交互式表格

我正在尝试创build一个交互式表单,可以根据单元格值加载一些数据。 例如,如果单元格“A1”更改为“estructura”,则范围(C2:E4)将加载data3列表。 下面的代码是一个好方法还是有更好的方法? data1 = [[1, 2, 3], [4, 5, None], [6, 7, 8]] data2 = [[10, 20, 30], [40, 50, 60], [70, 80, 90]] data3 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] static = Cell("A1").value while True: if static != Cell("A1").value: if Cell("A1").value == "mamposteria": CellRange("C2:E4").clear() Cell("C2").table = data1 elif Cell("A1").value […]

Datanitro python脚本不在workbook_open()中执行

在ThisWorkbook Excel对象中我有以下两个子例程: Private Sub Workbook_Open() MsgBox "Hello World" Call call_DN End Sub Sub call_DN() Application.COMAddIns("DataNitro.DataNitro").Object.RunScript ("test.py") MsgBox "called sub" End Sub 当我打开工作簿时,我看到“Hello World”消息框,然后是“调用子”消息框,但python脚本不执行。 但是,当我手动运行Workbook_Open()python脚本确实执行。 为什么python脚本不能在应用程序启动时执行? 没有错误消息正在被抛出 – 似乎.runscript命令只是被忽略。

我可以将Datanitro集成到可执行文件吗?

我期望能够创build一个可执行文件与py2exe或类似的东西,从Excel表中获取信息,并返回一个单词文件。 由于我的同事在技术上面临挑战,因此我需要创build一个可执行文件,为他们解决这个问题。 这里有两个问题: 我必须能够将代码导入代表DataNitro的python脚本。 什么模块代表DataNitro? 这是合法的吗? 我不会在这个exe文件运行的每台机器上都使用DataNitro许可证,除此之外,如果可能的话,这是否有点阴暗? 谢谢。 PS如果我无法做到这一点,我可能不得不使用xlrd,xlwt等。

用Datanitro对Excel范围进行sorting

我正在尝试使用Datanitro在Excel中对一系列单元格进行sorting。 它看起来不像Datanitro有一个内置的sorting方法,所以我的select是要么在Python中创build一个,这是datanitro似乎在这里做了什么 ,或者使用内置的VBA方法,并从python调用该方法通过datanitro。 一个简单的VBAsorting子程序如下: Sub Sort_1(strDataRange As Range, keyRange As Range) strDataRange.Sort Key1:=keyRange, Header:=xlNo, Order1:=xlDescending End Sub 现在我只需要从python调用这个,并传递子例程两个Range对象。 但是,我的python shell中的下面的代码产生一个NameError:'Range'没有被定义 VBA('Sort_1', [Range('A5:IF20'), Range('M5')]) 此外,如果将两个参数作为string传递,我将得到一个NitroException:未能运行excelmacros,大概是因为该子例程需要Range对象而不是string。 一个简单的解决方法是定义子程序中的范围,但是不能用我的python代码中的variables来dynamic变化。 有什么build议么? 我宁愿去VBA路由,因为该方法已经在VBA中很好的定义了,我不必浪费时间创build任何额外的Python方法。

是否有使用Python 3.5的Excel的DataNitro版本?

是否有使用Python 3.5的Excel的DataNitro版本? 我注意到试用版使用(并安装)Python版本2.7.9。 我一直在使用Python 3.5来处理所有新的Python项目,而且我并不是真的热衷于在我的机器上安装另一个版本的Python。

使用DataNitro,我如何打印一个python循环来优化,确保打印23行后,打印移动到相邻的列?

我正在使用grequest从多个url中提取json数据。 在这里的另一个用户的帮助下,我能够得到python连续打印每个url的结果。 现在,我想要使用DataNitro将这些结果打印出来。 这是我现在的代码。 import grequests import json urls = [ 'https://bittrex.com/api/v1.1/public/getorderbook?market=BTC-1ST&type=both&depth=50', 'https://bittrex.com/api/v1.1/public/getorderbook?market=BTC-AMP&type=both&depth=50', 'https://bittrex.com/api/v1.1/public/getorderbook?market=BTC-ARDR&type=both&depth=50', ] requests = (grequests.get(u) for u in urls) responses = grequests.map(requests) for response in responses: Cell("A1").value = "Buy" Cell("A2").value = (response.json()['result']['buy'][0]['Quantity']) Cell("A3").value = (response.json()['result']['buy'][0]['Rate']) Cell("A4").value = (response.json()['result']['buy'][1]['Quantity']) Cell("A5").value = (response.json()['result']['buy'][1]['Rate']) Cell("A6").value = (response.json()['result']['buy'][2]['Quantity']) Cell("A7").value = (response.json()['result']['buy'][2]['Rate']) Cell("A8").value = (response.json()['result']['buy'][3]['Quantity']) Cell("A9").value = […]

在Excel中使用Python和DataNitro转换时间

我在Excel电子表格中有一个h:m格式的列表,我试图用DataNitro做一些操作,但似乎并不像Excel格式化时间那样。 例如,在Excel中,时间8:32实际上只是格式化为8:32的十进制数字.355556。 当我用DataNitro访问那个时候,它把它看作小数,而不是string8:32。 如果我将Excel中的格式从“时间”更改为“常规”或“数字”,则会将其转换为小数(我不想)。 我发现的唯一的作品是手动通过每个单元格,并放置在每个单元前面,然后通过并将格式types更改为常规。 有没有办法将这些时间在Excel中转​​换为string,所以我可以提取与DataNitro的信息(它只能查看它为十进制)?

用xlrd / xlutils复制表格

我有一个文件夹与许多相同格式的Excel文件,多张表。 目标是循环浏览文件夹,并将每个笔记本中的其中一张纸张移到新的笔记本中,即在新的工作簿中从每个.xlsx文件中结束一张纸张。 我通常使用DataNitro的Excel工作,但遗憾的是,当复制数据,你似乎不能指定一个工作簿参数CellRange函数,所以我不认为这是可能的。 我有代码在VBA中执行,但是我的组织正在从VBA中移除。 我正在寻找使用xlrd和xlutils的解决方法。 到目前为止,我把它作为一个文件的testing用例: import os, xlrd, xlwt, xlutils FilePath = r"Z:\Production_Data\WaveII\2-007\20130403\Central report\March'13\March" #ENTER FILE PATH HERE os.chdir(FilePath) wb = xlrd.open_workbook("2nd Mar'13 CENTRAL REPORT..xls") copy_sheet1 = wb.sheet_by_index(1) new_book = xlwt.Workbook() test = new_book.add_sheet('TEST') 但是我不确定如何将copy_sheet1中的数据写入新工作簿中的“TEST”表单。 顺便说一句,如果它是一个精确的副本,包括格式化等,而不是逐个单元格迭代数据,那将是最好的。 不知道这是否可能。 任何帮助非常感谢。 谢谢

如何在DataNitro中打印汉字?

我是DataNitro的新手。 我想在Excel表格中处理一些中文字符,但是失败了。 当我在Python Shell中打印中文字符时,一切正常。 但是,当我在导入的python文件中打印中文字符时,它告诉我UnicodeDecodeError: 'gbk' codec can't decode byte 0xad in position 36: illegal multibyte sequence. 我认为编解码器应该是utf-8,所以我尝试在下面添加标题。 但是,这仍然行不通。 # -*- coding: utf-8 -*- 希望有人能给我一些提示。 谢谢。

Datanitro图表

如何使用Datanitro控制Excel工作表上图表的位置? 我认为,通过设置活动单元格,它将被定位在那里,但它总是以左上angular出现,在那里它隐藏了具有我希望保持可见的计算结果的单元格。