我希望在特定的sheeet上进行正则表达式搜索的结果显示为另一个工作表上的列。如果有条件的突出显示或某些事情,那就不会太难了,只是看看结果的位置,但我真正需要的是(对于我完美的GTD电子表格!)是能够制作自动生成的列,包括例如:所有细胞都有例如标签@home或#projectname。
在过去的生活中,我打开了Access for this(这是微软做的一件事,但并不完全糟糕!)但使用LibreOffice Base基本上是一次长时间的崩溃,加上电子表格的用户体验非常灵活。建议欢迎。我只是Linux的atm。
答案 0 :(得分:0)
使用LibreOffice Base基本上是一次长时间的崩溃
您是否尝试使用MySQL等拆分数据库设置?运行嵌入式HSQLDB为not recommended。
无论如何,这里有一些python代码可以做你想要的:
def calc_regex_to_column():
desktop = XSCRIPTCONTEXT.getDesktop()
model = desktop.getCurrentComponent()
sheet_src = model.getSheets().getByIndex(0)
sheet_dst = model.getSheets().getByIndex(1)
search = sheet_src.createSearchDescriptor()
search.SearchString = r".*@home|#projectname.*"
search.SearchCaseSensitive = True
search.SearchRegularExpression = True
selsFound = sheet_src.findAll(search)
sheet_dst_row = 0
for selIndex in range(0, selsFound.getCount()):
string_found = selsFound.getByIndex(selIndex).getString()
COLUMN_A = 0
cell = sheet_dst.getCellByPosition(COLUMN_A, sheet_dst_row)
cell.setString(string_found)
sheet_dst_row += 1
g_exportedScripts = calc_regex_to_column,
请参阅here了解脚本的放置位置。