首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使LibXL xlSheetGetNamedRange正常工作

无法使LibXL xlSheetGetNamedRange正常工作
EN

Stack Overflow用户
提问于 2012-09-25 06:22:09
回答 1查看 470关注 0票数 1

我正在尝试和LibXL一起工作。我可以从工作表中提取数据,但需要一个函数来将具有Excel行和列索引的字符串转换为startRow、endRow、startCol、endCol。

"A1:B3“到startRow = 0,endRow = 2,startCol = 0,endCol =1 (LibXL使用基于0的索引)

我已经试过我能想到的一切了。该库没有任何使用此函数的示例,并且文档非常稀疏。我做错了什么?

下面是我的代码:

代码语言:javascript
复制
int main()
{
    const char range[] = "B2:C3";
    int i, ret, rowFirst=0, rowLast=0, colFirst=0, colLast=0;
    BookHandle book;
    SheetHandle sheet;

    book = xlCreateBook();

    ret = xlBookLoad(book, "/home/jason/Downloads/panel.xls");

    sheet = xlBookGetSheet(book, 0);

    ret = xlSheetGetNamedRange(sheet, &range[0], &rowFirst, &rowLast, &colFirst, &colLast);

    printf("ret from xlSheet...Range = %d\n", ret);

    printf("%s\n", xlBookErrorMessage(book));
    printf("rowLast = %d\n", rowLast);
    printf("rowLast = %d\n", rowLast);
    printf("colFirst = %d\n", colFirst);
    printf("colLast = %d\n", colLast);

    return 0;

}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-30 00:43:45

使用xlSheetAddrToRowCol()函数实现此目的:

代码语言:javascript
复制
int rowStart, colStart, rowEnd, colEnd;
int rowRelativeStart, colRelativeStart, rowRelativeEnd, colRelativeEnd;

xlSheetAddrToRowCol(sheet, "B2", &rowStart, &colStart, &rowRelativeStart, &colRelativeStart);
xlSheetAddrToRowCol(sheet, "C3", &rowEnd, &colEnd, &rowRelativeEnd, &colRelativeEnd);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12573771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档