Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

如何获得一个单元格的相对名称??

Ronaldinho  发表于:2017-11-09 10:46:16  
复制

其实我有两个问题:


1.第一个是怎么能获得一个单元格的相对引用值?

使用excel.range(xxx).name得到的是绝对引用,也就是类似“Sheet1!$A$2:$BE$20”这样的写法,实际上我需要的是一个“Sheet1!A2:BE20”写法的东西用到后边的语句中,这样的话如何实现啊?


2.第二个就是我尝试用replace替换掉上边“Sheet1!$A$2:$BE$20”中的所有$,结果$是个通配符,替换完了东西就没了。。。这样的通配符应该怎么替换啊???


都是很基础的问题了,有了解的大神请帮忙看下,谢谢了!

 

Top
chinasa 发表于:2017-11-10 15:00:36

没理解你的意思,我把我自己在用的一段代码复制上来(在EXCEL里用的),供你参考,看是否能解决问题。

 

Do While Sheet3.Cells(i, 1).Value <> ""

j = 2
   Do While Sheet1.Cells(j, 4).Value <> ""
      If InStr(Sheet1.Cells(j, 4), Mid(Right(Sheet3.Cells(i, fhr).Value, 11), 1, 10)) > 0 Then
      Sheet3.Cells(i, 1) = Sheet1.Cells(j, 3)
      ps = ps + 1
      Exit Do
      End If
      j = j + 1
   Loop
i = i + 1
Loop

 



yihui 发表于:2017-11-13 16:19:38

debug.Print replace("Sheet1!$A$2:$BE$20","$","")

直接replace可以用啊

Sheet1!A2:BE20


Ronaldinho 发表于:2017-11-14 10:34:03
谢谢!问题已经解决!!

总记录:3篇  页次:1/1 9 1 :