从Excel中selectExcel中的偏移量

我正在从Access数据库中的数据创build一个Excel文件。

我目前正在尝试做的是偏移我在Excel中做的select从Access中,我不断收到错误。

ExcelWS.Range(Range("H6"), Range("H6").End(xlDown)).Offset(0, -1).Select

ExcelWS是一个Excel。 工作表对象。

我的目标是从G6中select工作簿的末尾。 但是,不是G列中的每个单元格都被填充,因此来自单元格G6的简单End(xlDown)只会让我部分通过该文件。 也就是说,列H中的所有单元格都被填充,所以我可以从单元格H6中完成一个End(xlDown)。 从那里,我想把我的select向左移动,给我所需的范围在列G选定。

上面的代码是大约两个小时的search结果,并尝试吨类似的代码的不同组合。 不过,我仍然收到一个错误。

运行时错误“1004”:

对象'_Global'的方法'范围'失败

奇怪的是1/10倍,我会收到这个愿望的结果。 剩下的时间我收到上述错误。

我感觉好像我的问题与从Access中运行这行代码有关,但是这是目前我完成此任务的唯一方法,因为我还有其他依赖于能够从Access执行的操作。

任何帮助将不胜感激,如果有任何更多的信息,我可以给我尽我所能。

谢谢。

要运行Select表单应被激活/进入焦点。

所以你需要把纸条放在纸上。

 ExcelWS.Activate ExcelWS.Range(Range("H6"), Range("H6").End(xlDown)).Offset(0, -1).Select 

Simalarly,为了使seet在焦点,你的工作簿需要积极/重点。

尽量避免Select尽可能多的。 也完全限定名称。

  Dim rngTest as Range Set rngTest= ExcelWS.Range(ExcelWS.Range("H6"), ExcelWS.Range("H6").End(xlDown)).Offset(0, -1) 

感谢@cyboashu,我能够得到它的工作。

我拿他给我的例子,把他们弄得一团糟,让它做我想做的事。

我发现问题后,我一直认为,这是每隔一段时间,一贯工作。

无论如何,我使用的代码是

 Dim ExcelR1 As Range Set ExcelR1 = ExcelWS.Range(ExcelWS.Range("H6"), ExcelWS.Range("H6").End(xlDown)).Offset(0, -1) ExcelR1.Activate