Q:如何从Excel工作表中获取特定行中的最后使用的列。尽管这是a simple task using Excel VBA,但使用Powerpoint VBA更加困难。
这是我的Excel工作表的一个示例
<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS9YWFdySi5wbmcifQ==” alt =“在此处输入图像描述”>
复制步骤
我要获取lastcol = 3Sub findlastcolumn() Set objExcel = CreateObject("Excel.application") Set objWorkbook = objExcel.Workbooks.Open("C:\Users\<USERNAME>\Desktop\data.xls") objExcel.Visible = True 'works in Powerpoint VBA but delivers the wrong column lastcol = objWorkbook.Sheets(1).UsedRange.Columns.Count 'produces an error in Powerpoint VBA 'but works in Excel VBA, correct column in Excel VBA lastcol = objWorkbook.Sheets(1).Cells(1, 254).End(Direction:=xlToLeft).Column 'produces an error in Powerpoint VBA 'but works in Excel VBA, and wrong column in Excel VBA too lastcol = objWorkbook.Sheets(1).Cells.SpecialCells(xlLastCell).Column 'wrong column. Powerpoint VBA' find method differs from Excel' find method 'searchdirection isn't available in Powerpoint VBA lastcol = objWorkbook.Sheets(1).Rows(1).Find(what:="*", _ after:=objWorkbook.Sheets(1).Cells(1, 1), searchdirection:=xlPrevious).Column objExcel.Quit Set objWorkbook = Nothing Set objExcel = Nothing End Sub
所需结果:
我的代码中的注释向您显示了到目前为止我已经尝试了什么以及它们产生了什么错误。感谢您的任何建议。
没有PowerPoint 2003标记吗? O.o
问:如何从Excel工作表中获取特定行中的最后使用的列。尽管这是使用Excel VBA的简单任务,但使用Powerpoint VBA则更加困难。这是我的Excel工作表的示例...
您发布的Excel特定代码应该可以正常工作,并提供与在Excel中执行相同的结果。
这是您可以做的。 *附带条件:未经测试的代码。如果这不起作用,请在评论中告诉我*
[如果有人遇到类似问题,我只是想发布更正的代码。 (感谢Peter Albert)
@ nixada,您可以