Fråga : VBA-felförlagehanteraren, när överträffa, täcker finns inte

Kvarteret av kodifierar nedanföra importer som specifika arbetssedlar från 3 olika Excel sparar in i en bordlägger.  

For anföra som exempel, var Year1.xlsx inte går ut, ett felmeddelande avfyrar (`1004 för det Run-time felet').  Förmiddag som I långt söker efter a för att genomföra en felförlagehanterare, som skulle, fungerar till denna verkställer:

If som en särskild Excel täcker, finns inte (e.g. `Year2.xlsx'), då utför kodifiera på den nästa Excel täcker listat i `- myPath = samling…',  

If som inget av täcker, finns listat i `- myPath = samling…', då avfyrar denna kodifierar: för class=" codeSnippet " för
1 för >MsgBox ”" för prettyprint för class= " " för codeSnippet794801 " för id= för >
> för
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
" codeBody " class= " notpretty " >Public underImportExcelSheets för
" klar "

Svar : VBA-felförlagehanteraren, när överträffa, täcker finns inte

använd detta

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
Offentliga underImportExcelSheets ()
Dunkel myPath (), j, iCnt som heltal
myPath = samling (”\ \ serverName \ Year1.xlsx”,” \ \ serverName \ Year2.xlsx ", ”\ \ serverName \ Year3.xlsx”)
För j = LBound (myPath) till UBound (myPath)
    
om dir (mypath (j))<>"" därefter

Fastställd objXL = CreateObject (”Excel.Application”)
    objXL.Workbooks.Open-myPath (j), som är riktigt
    Med objXL
        För I = 1 till. Worksheets.Count
            Om InStr (. Arbetssedlar (I). Namnge ”manick”) därefter
            DoCmd.TransferSpreadsheet-acImport, acSpreadsheetTypeExcel12, _,
             ”tableName”, myPath (j) som är riktig. Arbetssedlar (I). Namnge &”! A: M ",
            Avsluta om
        Därefter
    Avsluta med
    objXL.Quit
    Fastställd objXL = ingenting

    annars
    iCnt=iCnt + 1
avsluta om
Därefter
om icnt=3 därefter
MsgBox ”arbetssedlar finns inte. Gå ut sub nu! ” vbInformation, ”fel”,
gå ut suben
avsluta om 

Avsluta suben
 
Toggle all HighlightingOpen i nya WindowSelect
Andra lösningar  
 
programming4us programming4us