2016-12-16 73 views
0

在Outlook 2010中我有这样的指令,在我的VBA代码,只认沽选择到A1,然后保存Excel工作簿前景VBA application.goto

With wbFm.Sheets(1) 
................. 
    LastrOn = .Cells(.Rows.Count, "AQ").End(xlUp).Row 

    For i = 6 To LastrOn 
    Val = .Cells(i, 43).Value 

    Set FoundCell = .Columns("A").Find(Val) 

    If Not FoundCell Is Nothing Then 

    .Cells(i, 44).Copy 
    .Cells(FoundCell.Row, 14).PasteSpecial xlPasteValues <---- last cell picked up 
    end if 

    ................................. 
    Next 
.Range("AQ4") = "text1" 
.Range("AU4") = "tekst2" 
End With 

wbFm.Application.Goto wbFm.Sheets(1).Range("A1"),True 

Fdest = emailfolder & Filedest & RepDate & ".xlsx" 

If fsob.fileexists(Fdest) = False Then 
    wbFm.SaveAs Fdest 
End If 
    ........ 

wbFm打开工作簿

升级后Outlook 2013此命令

wbFm.Application.Goto wbFm.Sheets(1).Range("A1"),True 

不再工作。 当我删除这个命令时,程序正确完成,但是当我打开保存的文件时光标位于最后选取的单元格上。 任何想法?,问候,Ann

回答

1

假设wbFm是一个Excel工作簿对象,您可以简单地选择单元格。不需要GoTo语句。

wbFm.Sheets(1).Range("A1").Select 
+0

这是显而易见的,但这个命令(我真的很吃惊)做同样的事情 - 结束程序,不保存文件 – Angro

+0

我需要更多的上下文来知道这是真正问题所在,但我看到你'重新检查文件是否存在,然后保存。如果它已经存在?如果它存在,你不应该“保存”工作簿吗?如果它不存在,应该保存吗? –