2017-04-03 4 views
-2

Kann jemand bitte diese Excel-Formel innerhalb der VBA-Code erklären.verstehe nicht Excel-Formel in VBA eingebettet

Range("U8").FormulaR1C1 = _ 
=IF(ISNA(VLOOKUP(RC[-1],'C:\temp\MasterRecords.xls'!C2:C15,14,FALSE)=""True""),""No Title Found"",VLOOKUP(RC[-1],'C:\temp\MasterRecords.xls'!C2:C15,14,FALSE))" 

ich, dass die IF für den #N/A Wert prüft. Was ich nicht verstehe ist, was eine der VLOOKUP Funktionen genau macht. Welche Zelle wird durch die R1C1-Notation referenziert? Warum muss die Spalte nicht angegeben werden? Dann bekomme ich die 'C:\temp\MasterRecords.xls'!C2:C15 Argumente nicht. Vielen Dank.

+0

Mögliche Duplikat [Was die Funktion der FormulaR1C1 ist?] (http://stackoverflow.com/questions/13165938/what-is-the-function-of- formular1c1) – YowE3K

+0

Da C2: C15 bedeutet 14 Zellen in xlA1 Syntax und 14.680.064 Zellen in xlR1C1-Syntax. – Jeeped

Antwort

1

In der Formel

1) RC [-1] bezieht sich auf die eine Zelle der Formel Zelle verlassen.

2) Die Vlookup-Formel bezieht sich auf eine externe Arbeitsmappe C: \ temp \ MasterRecords.xls.

3) table_array C2: C15 verwendet in Vlookup Formel bezieht sich auf $ B: $ O

4) Spaltenindex 14 in die Kolonne O bezeichnet Unter Berücksichtigung der table_array

Die Formel in Z1S1 geschrieben und I Angenommen, Sie sind immer mit C2 verwirrt: C15, weil R fehlt, dass hier nur bedeutet, dass ganze Spalten in der Formel dh $ B verwendet werden: O $

0

Blick durch das, was Sie geschrieben haben, lässt die vlookup brechen:

VLOOKUP(RC[-1],'C:\temp\MasterRecords.xls'!C2:C15,14,FALSE) 

RC[-1] = Suchen Sie den Wert in 1 Spalte links von der aktuellen Zelle. (Gleiche Zeile)

'C:\temp\MasterRecords.xls'!C2:C15 = für die Daten in C2 suchen: C15 (Spalte 2 bis Spalte 15 der masterRecords xl Datei

14 = Gibt die 14. Spalte in der Lookup-Bereich Wird Spalte zurückgeben 15.. die Datei.

FALSE = genaue Übereinstimmung.