Foxtable(狐表)用户栏目专家坐堂 → [求助]怎么获取EXCEL表中批注为特定内容的某个单元格的值?


  共有2030人关注过本帖树形打印复制链接

主题:[求助]怎么获取EXCEL表中批注为特定内容的某个单元格的值?

帅哥哟,离线,有人找我吗?
noway143
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:92 积分:839 威望:0 精华:0 注册:2016/1/27 15:09:00
[求助]怎么获取EXCEL表中批注为特定内容的某个单元格的值?  发帖心情 Post By:2017/8/24 15:06:00 [只看该作者]

附录Excel与VBA中有  ClearNotes 可以清除单元格的批注,请问怎么获取单元格的批注呀?

我需要在sheet中,根据批注的内容来定位并获取单元格的位置和值。

 回到顶部
帅哥哟,离线,有人找我吗?
noway143
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:92 积分:839 威望:0 精华:0 注册:2016/1/27 15:09:00
  发帖心情 Post By:2017/8/24 15:10:00 [只看该作者]

我在一个EXCEL中根据一个批注获取某单元格的值,然后要向十几份EXCEL文件中写入这个值,在这十几份EXCEL文件中,接收值的单元格位置都不同,相同的是,他们的批注信息都一样

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/8/24 15:22:00 [只看该作者]

参考

 

 

Dim App As New MSExcel.Application
Dim Wb As MSExcel.Workbook = App.WorkBooks.Open("e:\test.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)

If ws.cells(2,1).Comment Is Nothing Then '第二行,第一列
    msgbox("没有标注")
Else
    Dim pz As String = ws.cells(2,1).Comment.Text
    msgbox(pz)
End If

app.quit


 回到顶部
帅哥哟,离线,有人找我吗?
noway143
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:92 积分:839 威望:0 精华:0 注册:2016/1/27 15:09:00
  发帖心情 Post By:2017/8/24 15:24:00 [只看该作者]

谢谢,回复真快啊

 回到顶部
帅哥哟,离线,有人找我吗?
noway143
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:92 积分:839 威望:0 精华:0 注册:2016/1/27 15:09:00
  发帖心情 Post By:2017/8/24 15:27:00 [只看该作者]

请问怎么根据批注找单元格呀?sheet没办法遍历吧?

 回到顶部
帅哥哟,离线,有人找我吗?
noway143
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:92 积分:839 威望:0 精华:0 注册:2016/1/27 15:09:00
  发帖心情 Post By:2017/8/24 15:34:00 [只看该作者]

WorkSheet有没有Comments属性,可以直接WorkSheet.Comments("我是标注")来返回单元格坐标集合呀?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/8/24 16:12:00 [只看该作者]

参考代码

 

Dim App As New MSExcel.Application
Dim Wb As MSExcel.Workbook = App.WorkBooks.Open("D:\test.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)

For Each bz As object In ws.Comments
    output.show(bz.parent.address & " " & bz.text)
Next

app.quit


 回到顶部
帅哥哟,离线,有人找我吗?
noway143
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:92 积分:839 威望:0 精华:0 注册:2016/1/27 15:09:00
  发帖心情 Post By:2017/8/28 14:29:00 [只看该作者]

老师,再请教一个问题:

怎么返回当前WorkSheet中焦点单元格的值?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/8/28 14:37:00 [只看该作者]

比如,这样获取

 

Dim str As String = app.Selection.text

msgbox(str)


 回到顶部
帅哥哟,离线,有人找我吗?
noway143
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:92 积分:839 威望:0 精华:0 注册:2016/1/27 15:09:00
  发帖心情 Post By:2017/8/28 23:38:00 [只看该作者]

再请教个问题,我在EXCEL模板中给一些单元格加了标注,和单元格公式,build之后,报表中所有单元格都左移了一格,比如说,模板中单元格I29,到报表中就变成了H29,而单元格里面的公式正常没变,导致计算结果全对不上。

而且,模板中的标注,在生成的报表中全部丢失了。

求解,谢谢

 回到顶部
总数 20 1 2 下一页