2016-01-06 24 views
5

ja oglądałem tutorial do porównywania dwóch arkuszy programu Excel i natknąłem się na to:Co jest worksheet.Cells (wiersz, kolumna) .Formula

cellVal1 = ws1.Cells(row, col).Formula 

w filmie mówi, że ten przypisuje wartość określona komórka do cellVal1. Widziałem tylko ludzie używają ws.Cells(row, col).Value i nie mogę znaleźć nic o .Formula w odniesieniu do .Cells(<row>,<col>)

Co .Formula zrobić i czy jest on inny niż .Value?

+4

Zmienna by skończyć ze wzoru, a nie wynik wspomnianego wzoru. Powiedzmy, że w komórce (1,1) znajduje się wzór '= suma (1,1)', wartość '.Value' zwróci 2, ale wyrażenie .Fulula' zwróci' = sumę (1,1) 'jako strunowy. –

+0

Oto kilka linków w przybliżonej kolejności trafności na pytanie: [Właściwość Range.Value] (https://msdn.microsoft.com/en-us/library/office/ff195193.aspx), [Właściwość Range.Formula ] (https://msdn.microsoft.com/en-us/library/office/ff838835.aspx), [właściwość Range.Text] (https://msdn.microsoft.com/en-us/library/office/ ff840217.aspx), [Range.Value2 property] (https://msdn.microsoft.com/en-us/library/office/ff193553.aspx), [Range.Cells property] (https://msdn.microsoft. com/en-us/library/office/ff196273.aspx) – Jeeped

+0

Więc kiedy zrobisz 'Cell (1,1) .Value' jest' Cell' uważany za jakiś typ podzbioru 'Range'? Ponieważ widziałem te właściwości _Range_, ale nie zdawałem sobie sprawy, że są one powiązane z _Cell_ –

Odpowiedz

4

Część .formula przyjmuje wzór w komórce, a .value przyjmuje tylko wartość, którą widać.

enter image description here

A1 = 2 
A2 = 4 
A3 = 6 

W A3 istnieje wzór =A1+A2 jeśli używasz .formula, aby umieścić formułę wewnątrz cellVal1 użyciu cellVal1 = Cells(3, 1).Formula (która jest równa Range("A3").formula) można dostać =A1+A2, ale jeśli używasz .value masz 6. Pamiętaj, jeśli spróbujesz zapisać ciąg wewnątrz zmiennej typu int, pojawi się błąd, ponieważ formuła jest ciągiem znaków.

Wskazówka: Jeśli używasz .formulaR1C1 dostaniesz =R[-2]C+R[-1]C

+2

Big ** plus ** za uniknięcie użycia ** Row ** jako zmiennej w sposób "wideo". – Jeeped