ru_excel 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1019 @@
1
+ module Excel
2
+ =begin
3
+ lots of Excel Magic Numbers
4
+ =end
5
+
6
+ # Boundaries BIFF8+
7
+
8
+ MAX_ROW = 65536
9
+ MAX_COL = 256
10
+
11
+ module BiffRecord
12
+ Numbers = {
13
+ 0x0000=> "DIMENSIONS",
14
+ 0x0001=> "BLANK",
15
+ 0x0002=> "INTEGER",
16
+ 0x0003=> "NUMBER",
17
+ 0x0004=> "LABEL",
18
+ 0x0005=> "BOOLERR",
19
+ 0x0006=> "FORMULA",
20
+ 0x0007=> "STRING",
21
+ 0x0008=> "ROW",
22
+ 0x0009=> "BOF",
23
+ 0x000A=> "EOF",
24
+ 0x000B=> "INDEX",
25
+ 0x000C=> "CALCCOUNT",
26
+ 0x000D=> "CALCMODE",
27
+ 0x000E=> "PRECISION",
28
+ 0x000F=> "REFMODE",
29
+ 0x0010=> "DELTA",
30
+ 0x0011=> "ITERATION",
31
+ 0x0012=> "PROTECT",
32
+ 0x0013=> "PASSWORD",
33
+ 0x0014=> "HEADER",
34
+ 0x0015=> "FOOTER",
35
+ 0x0016=> "EXTERNCOUNT",
36
+ 0x0017=> "EXTERNSHEET",
37
+ 0x0018=> "NAME",
38
+ 0x0019=> "WINDOWPROTECT",
39
+ 0x001A=> "VERTICALPAGEBREAKS",
40
+ 0x001B=> "HORIZONTALPAGEBREAKS",
41
+ 0x001C=> "NOTE",
42
+ 0x001D=> "SELECTION",
43
+ 0x001E=> "FORMAT",
44
+ 0x001F=> "FORMATCOUNT",
45
+ 0x0020=> "COLUMNDEFAULT",
46
+ 0x0021=> "ARRAY",
47
+ 0x0022=> "1904",
48
+ 0x0023=> "EXTERNNAME",
49
+ 0x0024=> "COLWIDTH",
50
+ 0x0025=> "DEFAULTROWHEIGHT",
51
+ 0x0026=> "LEFTMARGIN",
52
+ 0x0027=> "RIGHTMARGIN",
53
+ 0x0028=> "TOPMARGIN",
54
+ 0x0029=> "BOTTOMMARGIN",
55
+ 0x002A=> "PRINTHEADERS",
56
+ 0x002B=> "PRINTGRIDLINES",
57
+ 0x002F=> "FILEPASS",
58
+ 0x0031=> "FONT",
59
+ 0x0036=> "TABLE",
60
+ 0x003C=> "CONTINUE",
61
+ 0x003D=> "WINDOW1",
62
+ 0x003E=> "WINDOW2",
63
+ 0x0040=> "BACKUP",
64
+ 0x0041=> "PANE",
65
+ 0x0042=> "CODEPAGE",
66
+ 0x0043=> "XF",
67
+ 0x0044=> "IXFE",
68
+ 0x0045=> "EFONT",
69
+ 0x004D=> "PLS",
70
+ 0x0050=> "DCON",
71
+ 0x0051=> "DCONREF",
72
+ 0x0053=> "DCONNAME",
73
+ 0x0055=> "DEFCOLWIDTH",
74
+ 0x0056=> "BUILTINFMTCNT",
75
+ 0x0059=> "XCT",
76
+ 0x005A=> "CRN",
77
+ 0x005B=> "FILESHARING",
78
+ 0x005C=> "WRITEACCESS",
79
+ 0x005D=> "OBJ",
80
+ 0x005E=> "UNCALCED",
81
+ 0x005F=> "SAFERECALC",
82
+ 0x0060=> "TEMPLATE",
83
+ 0x0063=> "OBJPROTECT",
84
+ 0x007D=> "COLINFO",
85
+ 0x007E=> "RK",
86
+ 0x007F=> "IMDATA",
87
+ 0x0080=> "GUTS",
88
+ 0x0081=> "WSBOOL",
89
+ 0x0082=> "GRIDSET",
90
+ 0x0083=> "HCENTER",
91
+ 0x0084=> "VCENTER",
92
+ 0x0085=> "BOUNDSHEET",
93
+ 0x0086=> "WRITEPROT",
94
+ 0x0087=> "ADDIN",
95
+ 0x0088=> "EDG",
96
+ 0x0089=> "PUB",
97
+ 0x008C=> "COUNTRY",
98
+ 0x008D=> "HIDEOBJ",
99
+ 0x008E=> "BUNDLESOFFSET",
100
+ 0x008F=> "BUNDLEHEADER",
101
+ 0x0090=> "SORT",
102
+ 0x0091=> "SUB",
103
+ 0x0092=> "PALETTE",
104
+ 0x0093=> "STYLE",
105
+ 0x0094=> "LHRECORD",
106
+ 0x0095=> "LHNGRAPH",
107
+ 0x0096=> "SOUND",
108
+ 0x0098=> "LPR",
109
+ 0x0099=> "STANDARDWIDTH",
110
+ 0x009A=> "FNGROUPNAME",
111
+ 0x009B=> "FILTERMODE",
112
+ 0x009C=> "FNGROUPCOUNT",
113
+ 0x009D=> "AUTOFILTERINFO",
114
+ 0x009E=> "AUTOFILTER",
115
+ 0x00A0=> "SCL",
116
+ 0x00A1=> "SETUP",
117
+ 0x00A9=> "COORDLIST",
118
+ 0x00AB=> "GCW",
119
+ 0x00AE=> "SCENMAN",
120
+ 0x00AF=> "SCENARIO",
121
+ 0x00B0=> "SXVIEW",
122
+ 0x00B1=> "SXVD",
123
+ 0x00B2=> "SXVI",
124
+ 0x00B4=> "SXIVD",
125
+ 0x00B5=> "SXLI",
126
+ 0x00B6=> "SXPI",
127
+ 0x00B8=> "DOCROUTE",
128
+ 0x00B9=> "RECIPNAME",
129
+ 0x00BC=> "SHRFMLA",
130
+ 0x00BD=> "MULRK",
131
+ 0x00BE=> "MULBLANK",
132
+ 0x00C1=> "MMS",
133
+ 0x00C2=> "ADDMENU",
134
+ 0x00C3=> "DELMENU",
135
+ 0x00C5=> "SXDI",
136
+ 0x00C6=> "SXDB",
137
+ 0x00C7=> "SXFIELD",
138
+ 0x00C8=> "SXINDEXLIST",
139
+ 0x00C9=> "SXDOUBLE",
140
+ 0x00CD=> "SXSTRING",
141
+ 0x00CE=> "SXDATETIME",
142
+ 0x00D0=> "SXTBL",
143
+ 0x00D1=> "SXTBRGITEM",
144
+ 0x00D2=> "SXTBPG",
145
+ 0x00D3=> "OBPROJ",
146
+ 0x00D5=> "SXIDSTM",
147
+ 0x00D6=> "RSTRING",
148
+ 0x00D7=> "DBCELL",
149
+ 0x00DA=> "BOOKBOOL",
150
+ 0x00DC=> "SXEXT|PARAMQRY",
151
+ 0x00DD=> "SCENPROTECT",
152
+ 0x00DE=> "OLESIZE",
153
+ 0x00DF=> "UDDESC",
154
+ 0x00E0=> "XF",
155
+ 0x00E1=> "INTERFACEHDR",
156
+ 0x00E2=> "INTERFACEEND",
157
+ 0x00E3=> "SXVS",
158
+ 0x00E5=> "MERGEDCELLS",
159
+ 0x00E9=> "BITMAP",
160
+ 0x00EB=> "MSODRAWINGGROUP",
161
+ 0x00EC=> "MSODRAWING",
162
+ 0x00ED=> "MSODRAWINGSELECTION",
163
+ 0x00F0=> "SXRULE",
164
+ 0x00F1=> "SXEX",
165
+ 0x00F2=> "SXFILT",
166
+ 0x00F6=> "SXNAME",
167
+ 0x00F7=> "SXSELECT",
168
+ 0x00F8=> "SXPAIR",
169
+ 0x00F9=> "SXFMLA",
170
+ 0x00FB=> "SXFORMAT",
171
+ 0x00FC=> "SST",
172
+ 0x00FD=> "LABELSST",
173
+ 0x00FF=> "EXTSST",
174
+ 0x0100=> "SXVDEX",
175
+ 0x0103=> "SXFORMULA",
176
+ 0x0122=> "SXDBEX",
177
+ 0x0137=> "CHTRINSERT",
178
+ 0x0138=> "CHTRINFO",
179
+ 0x013B=> "CHTRCELLCONTENT",
180
+ 0x013D=> "TABID",
181
+ 0x0140=> "CHTRMOVERANGE",
182
+ 0x014D=> "CHTRINSERTTAB",
183
+ 0x015F=> "LABELRANGES",
184
+ 0x0160=> "USESELFS",
185
+ 0x0161=> "DSF",
186
+ 0x0162=> "XL5MODIFY",
187
+ 0x0196=> "CHTRHEADER",
188
+ 0x01A9=> "USERBVIEW",
189
+ 0x01AA=> "USERSVIEWBEGIN",
190
+ 0x01AB=> "USERSVIEWEND",
191
+ 0x01AD=> "QSI",
192
+ 0x01AE=> "SUPBOOK",
193
+ 0x01AF=> "PROT4REV",
194
+ 0x01B0=> "CONDFMT",
195
+ 0x01B1=> "CF",
196
+ 0x01B2=> "DVAL",
197
+ 0x01B5=> "DCONBIN",
198
+ 0x01B6=> "TXO",
199
+ 0x01B7=> "REFRESHALL",
200
+ 0x01B8=> "HLINK",
201
+ 0x01BA=> "CODENAME",
202
+ 0x01BB=> "SXFDBTYPE",
203
+ 0x01BC=> "PROT4REVPASS",
204
+ 0x01BE=> "DV",
205
+ 0x01C0=> "XL9FILE",
206
+ 0x01C1=> "RECALCID",
207
+ 0x0200=> "DIMENSIONS",
208
+ 0x0201=> "BLANK",
209
+ 0x0203=> "NUMBER",
210
+ 0x0204=> "LABEL",
211
+ 0x0205=> "BOOLERR",
212
+ 0x0206=> "FORMULA",
213
+ 0x0207=> "STRING",
214
+ 0x0208=> "ROW",
215
+ 0x0209=> "BOF",
216
+ 0x020B=> "INDEX",
217
+ 0x0218=> "NAME",
218
+ 0x0221=> "ARRAY",
219
+ 0x0223=> "EXTERNNAME",
220
+ 0x0225=> "DEFAULTROWHEIGHT",
221
+ 0x0231=> "FONT",
222
+ 0x0236=> "TABLE",
223
+ 0x023E=> "WINDOW2",
224
+ 0x0243=> "XF",
225
+ 0x027E=> "RK",
226
+ 0x0293=> "STYLE",
227
+ 0x0406=> "FORMULA",
228
+ 0x0409=> "BOF",
229
+ 0x041E=> "FORMAT",
230
+ 0x0443=> "XF",
231
+ 0x04BC=> "SHRFMLA",
232
+ 0x0800=> "SCREENTIP",
233
+ 0x0803=> "WEBQRYSETTINGS",
234
+ 0x0804=> "WEBQRYTABLES",
235
+ 0x0809=> "BOF",
236
+ 0x0862=> "SHEETLAYOUT",
237
+ 0x0867=> "SHEETPROTECTION",
238
+ 0x1001=> "UNITS",
239
+ 0x1002=> "ChartChart",
240
+ 0x1003=> "ChartSeries",
241
+ 0x1006=> "ChartDataformat",
242
+ 0x1007=> "ChartLineformat",
243
+ 0x1009=> "ChartMarkerformat",
244
+ 0x100A=> "ChartAreaformat",
245
+ 0x100B=> "ChartPieformat",
246
+ 0x100C=> "ChartAttachedlabel",
247
+ 0x100D=> "ChartSeriestext",
248
+ 0x1014=> "ChartChartformat",
249
+ 0x1015=> "ChartLegend",
250
+ 0x1016=> "ChartSerieslist",
251
+ 0x1017=> "ChartBar",
252
+ 0x1018=> "ChartLine",
253
+ 0x1019=> "ChartPie",
254
+ 0x101A=> "ChartArea",
255
+ 0x101B=> "ChartScatter",
256
+ 0x101C=> "ChartChartline",
257
+ 0x101D=> "ChartAxis",
258
+ 0x101E=> "ChartTick",
259
+ 0x101F=> "ChartValuerange",
260
+ 0x1020=> "ChartCatserrange",
261
+ 0x1021=> "ChartAxislineformat",
262
+ 0x1022=> "ChartFormatlink",
263
+ 0x1024=> "ChartDefaulttext",
264
+ 0x1025=> "ChartText",
265
+ 0x1026=> "ChartFontx",
266
+ 0x1027=> "ChartObjectLink",
267
+ 0x1032=> "ChartFrame",
268
+ 0x1033=> "BEGIN",
269
+ 0x1034=> "END",
270
+ 0x1035=> "ChartPlotarea",
271
+ 0x103A=> "Chart3D",
272
+ 0x103C=> "ChartPicf",
273
+ 0x103D=> "ChartDropbar",
274
+ 0x103E=> "ChartRadar",
275
+ 0x103F=> "ChartSurface",
276
+ 0x1040=> "ChartRadararea",
277
+ 0x1041=> "ChartAxisparent",
278
+ 0x1043=> "ChartLegendxn",
279
+ 0x1044=> "ChartShtprops",
280
+ 0x1045=> "ChartSertocrt",
281
+ 0x1046=> "ChartAxesused",
282
+ 0x1048=> "ChartSbaseref",
283
+ 0x104A=> "ChartSerparent",
284
+ 0x104B=> "ChartSerauxtrend",
285
+ 0x104E=> "ChartIfmt",
286
+ 0x104F=> "ChartPos",
287
+ 0x1050=> "ChartAlruns",
288
+ 0x1051=> "ChartAI",
289
+ 0x105B=> "ChartSerauxerrbar",
290
+ 0x105D=> "ChartSerfmt",
291
+ 0x105F=> "Chart3DDataFormat",
292
+ 0x1060=> "ChartFbi",
293
+ 0x1061=> "ChartBoppop",
294
+ 0x1062=> "ChartAxcext",
295
+ 0x1063=> "ChartDat",
296
+ 0x1064=> "ChartPlotgrowth",
297
+ 0x1065=> "ChartSiindex",
298
+ 0x1066=> "ChartGelframe",
299
+ 0x1067=> "ChartBoppcustom",
300
+ 0xFFFF=> ""
301
+ }
302
+ end
303
+
304
+
305
+ StdFuncByName = {
306
+ "ABS"=> [0x018, 1, 1, "V", "V", false], # 1
307
+ "ACOS"=> [0x063, 1, 1, "V", "V", false], # 2
308
+ "ACOSH"=> [0x0e9, 1, 1, "V", "V", false], # 3
309
+ "ADDRESS"=> [0x0db, 2, 5, "V", "V V V V V", false], # 4
310
+ "AND"=> [0x024, 1, 30, "V", "R ...", false], # 5
311
+ "ARCTAN"=> [0x012, 1, 1, "V", "V", false], # 6
312
+ "AREAS"=> [0x04b, 1, 1, "V", "R", false], # 7
313
+ "ASC"=> [0x0d6, 1, 1, "V", "V", false], # 8
314
+ "ASIN"=> [0x062, 1, 1, "V", "V", false], # 9
315
+ "ASINH"=> [0x0e8, 1, 1, "V", "V", false], # 10
316
+ "ATAN2"=> [0x061, 2, 2, "V", "V V", false], # 11
317
+ "ATANH"=> [0x0ea, 1, 1, "V", "V", false], # 12
318
+ "AVEDEV"=> [0x10d, 1, 30, "V", "R ...", false], # 13
319
+ "AVERAGE"=> [0x005, 1, 30, "V", "R ...", false], # 14
320
+ "AVERAGEA"=> [0x169, 1, 30, "V", "R ...", false], # 15
321
+ "BETADIST"=> [0x10e, 3, 5, "V", "V V V V V", false], # 16
322
+ "BETAINV"=> [0x110, 3, 5, "V", "V V V V V", false], # 17
323
+ "BINOMDIST"=> [0x111, 4, 4, "V", "V V V V", false], # 18
324
+ "CEILING"=> [0x120, 2, 2, "V", "V V", false], # 19
325
+ "CELL"=> [0x07d, 1, 2, "V", "V R", true], # 20
326
+ "CHAR"=> [0x06f, 1, 1, "V", "V", false], # 21
327
+ "CHIDIST"=> [0x112, 2, 2, "V", "V V", false], # 22
328
+ "CHIINV"=> [0x113, 2, 2, "V", "V V", false], # 23
329
+ "CHITEST"=> [0x132, 2, 2, "V", "A A", false], # 24
330
+ "CHOOSE"=> [0x064, 2, 30, "R", "V R ...", false], # 25
331
+ "CLEAN"=> [0x0a2, 1, 1, "V", "V", false], # 26
332
+ "CODE"=> [0x079, 1, 1, "V", "V", false], # 27
333
+ "COLUMN"=> [0x009, 0, 1, "V", "R", false], # 28
334
+ "COLUMNS"=> [0x04d, 1, 1, "V", "R", false], # 29
335
+ "COMBIN"=> [0x114, 2, 2, "V", "V V", false], # 30
336
+ "CONCATENATE"=> [0x150, 0, 30, "V", "V ...", false], # 31
337
+ "CONFIDENCE"=> [0x115, 3, 3, "V", "V V V", false], # 32
338
+ "CORREL"=> [0x133, 2, 2, "V", "A A", false], # 33
339
+ "COS"=> [0x010, 1, 1, "V", "V", false], # 34
340
+ "COSH"=> [0x0e6, 1, 1, "V", "V", false], # 35
341
+ "COUNT"=> [0x000, 0, 30, "V", "R ...", false], # 36
342
+ "COUNTA"=> [0x0a9, 0, 30, "V", "R ...", false], # 37
343
+ "COUNTBLANK"=> [0x15b, 1, 1, "V", "R", false], # 38
344
+ "COUNTIF"=> [0x15a, 2, 2, "V", "R V", false], # 39
345
+ "COVAR"=> [0x134, 2, 2, "V", "A A", false], # 40
346
+ "CRITBINOM"=> [0x116, 3, 3, "V", "V V V", false], # 41
347
+ "DATE"=> [0x041, 3, 3, "V", "V V V", false], # 42
348
+ "DATEDIF"=> [0x15f, 3, 3, "V", "V V V", false], # 43
349
+ "DATESTRING"=> [0x160, 1, 1, "V", "V", false], # 44
350
+ "DATEVALUE"=> [0x08c, 1, 1, "V", "V", false], # 45
351
+ "DAVERAGE"=> [0x02a, 3, 3, "V", "R R R", false], # 46
352
+ "DAY"=> [0x043, 1, 1, "V", "V", false], # 47
353
+ "DAYS360"=> [0x0dc, 2, 3, "V", "V V V", false], # 48
354
+ "DB"=> [0x0f7, 4, 5, "V", "V V V V V", false], # 49
355
+ "DBSC"=> [0x0d7, 1, 1, "V", "V", false], # 50
356
+ "DCOUNT"=> [0x028, 3, 3, "V", "R R R", false], # 51
357
+ "DCOUNTA"=> [0x0c7, 3, 3, "V", "R R R", false], # 52
358
+ "DDB"=> [0x090, 4, 5, "V", "V V V V V", false], # 53
359
+ "DEGREES"=> [0x157, 1, 1, "V", "V", false], # 54
360
+ "DEVSQ"=> [0x13e, 1, 30, "V", "R ...", false], # 55
361
+ "DGET"=> [0x0eb, 3, 3, "V", "R R R", false], # 56
362
+ "DMAX"=> [0x02c, 3, 3, "V", "R R R", false], # 57
363
+ "DMIN"=> [0x02b, 3, 3, "V", "R R R", false], # 58
364
+ "DOLLAR"=> [0x00d, 1, 2, "V", "V V", false], # 59
365
+ "DPRODUCT"=> [0x0bf, 3, 3, "V", "R R R", false], # 60
366
+ "DSTDEV"=> [0x02d, 3, 3, "V", "R R R", false], # 61
367
+ "DSTDEVP"=> [0x0c3, 3, 3, "V", "R R R", false], # 62
368
+ "DSUM"=> [0x029, 3, 3, "V", "R R R", false], # 63
369
+ "DVAR"=> [0x02f, 3, 3, "V", "R R R", false], # 64
370
+ "DVARP"=> [0x0c4, 3, 3, "V", "R R R", false], # 65
371
+ "ERROR.TYPE"=> [0x105, 1, 1, "V", "V", false], # 66
372
+ "EVEN"=> [0x117, 1, 1, "V", "V", false], # 67
373
+ "EXACT"=> [0x075, 2, 2, "V", "V V", false], # 68
374
+ "EXP"=> [0x015, 1, 1, "V", "V", false], # 69
375
+ "EXPONDIST"=> [0x118, 3, 3, "V", "V V V", false], # 70
376
+ "FACT"=> [0x0b8, 1, 1, "V", "V", false], # 71
377
+ "false"=> [0x023, 0, 0, "V", "-", false], # 72
378
+ "FDIST"=> [0x119, 3, 3, "V", "V V V", false], # 73
379
+ "FIND"=> [0x07c, 2, 3, "V", "V V V", false], # 74
380
+ "FINDB"=> [0x0cd, 2, 3, "V", "V V V", false], # 75
381
+ "FINV"=> [0x11a, 3, 3, "V", "V V V", false], # 76
382
+ "FISHER"=> [0x11b, 1, 1, "V", "V", false], # 77
383
+ "FISHERINV"=> [0x11c, 1, 1, "V", "V", false], # 78
384
+ "FIXED"=> [0x00e, 2, 3, "V", "V V V", false], # 79
385
+ "FLOOR"=> [0x11d, 2, 2, "V", "V V", false], # 80
386
+ "FORECAST"=> [0x135, 3, 3, "V", "V A A", false], # 81
387
+ "FREQUENCY"=> [0x0fc, 2, 2, "A", "R R", false], # 82
388
+ "FTEST"=> [0x136, 2, 2, "V", "A A", false], # 83
389
+ "FV"=> [0x039, 3, 5, "V", "V V V V V", false], # 84
390
+ "GAMMADIST"=> [0x11e, 4, 4, "V", "V V V V", false], # 85
391
+ "GAMMAINV"=> [0x11f, 3, 3, "V", "V V V", false], # 86
392
+ "GAMMALN"=> [0x10f, 1, 1, "V", "V", false], # 87
393
+ "GEOMEAN"=> [0x13f, 1, 30, "V", "R ...", false], # 88
394
+ "GETPIVOTDATA"=> [0x166, 2, 30, "A", "-", false], # 89
395
+ "GROWTH"=> [0x034, 1, 4, "A", "R R R V", false], # 90
396
+ "HARMEAN"=> [0x140, 1, 30, "V", "R ...", false], # 91
397
+ "HLOOKUP"=> [0x065, 3, 4, "V", "V R R V", false], # 92
398
+ "HOUR"=> [0x047, 1, 1, "V", "V", false], # 93
399
+ "HYPERLINK"=> [0x167, 1, 2, "V", "V V", false], # 94
400
+ "HYPGEOMVERT"=> [0x121, 4, 4, "V", "V V V V", false], # 95
401
+ "IF"=> [0x001, 2, 3, "R", "V R R", false], # 96
402
+ "INDEX"=> [0x01d, 2, 4, "R", "R V V V", false], # 97
403
+ "INDIRECT"=> [0x094, 1, 2, "R", "V V", true], # 98
404
+ "INFO"=> [0x0f4, 1, 1, "V", "V", false], # 99
405
+ "INT"=> [0x019, 1, 1, "V", "V", false], # 100
406
+ "INTERCEPT"=> [0x137, 2, 2, "V", "A A", false], # 101
407
+ "IPMT"=> [0x0a7, 4, 6, "V", "V V V V V V", false], # 102
408
+ "IRR"=> [0x03e, 1, 2, "V", "R V", false], # 103
409
+ "ISBLANK"=> [0x081, 1, 1, "V", "V", false], # 104
410
+ "ISERR"=> [0x07e, 1, 1, "V", "V", false], # 105
411
+ "ISERROR"=> [0x003, 1, 1, "V", "V", false], # 106
412
+ "ISLOGICAL"=> [0x0c6, 1, 1, "V", "V", false], # 107
413
+ "ISNA"=> [0x002, 1, 1, "V", "V", false], # 108
414
+ "ISNONTEXT"=> [0x0c0, 1, 1, "V", "V", false], # 109
415
+ "ISNUMBER"=> [0x080, 1, 1, "V", "V", false], # 110
416
+ "ISPMT"=> [0x15e, 4, 4, "V", "V V V V", false], # 111
417
+ "ISREF"=> [0x069, 1, 1, "V", "R", false], # 112
418
+ "ISTEXT"=> [0x07f, 1, 1, "V", "V", false], # 113
419
+ "KURT"=> [0x142, 1, 30, "V", "R ...", false], # 114
420
+ "LARGE"=> [0x145, 2, 2, "V", "R V", false], # 115
421
+ "LEFT"=> [0x073, 1, 2, "V", "V V", false], # 116
422
+ "LEFTB"=> [0x0d0, 1, 2, "V", "V V", false], # 117
423
+ "LEN"=> [0x020, 1, 1, "V", "V", false], # 118
424
+ "LENB"=> [0x0d3, 1, 1, "V", "V", false], # 119
425
+ "LINEST"=> [0x031, 1, 4, "A", "R R V V", false], # 120
426
+ "LN"=> [0x016, 1, 1, "V", "V", false], # 121
427
+ "LOG"=> [0x06d, 1, 2, "V", "V V", false], # 122
428
+ "LOG10"=> [0x017, 1, 1, "V", "V", false], # 123
429
+ "LOGEST"=> [0x033, 1, 4, "A", "R R V V", false], # 124
430
+ "LOGINV"=> [0x123, 3, 3, "V", "V V V", false], # 125
431
+ "LOGNORMDIST"=> [0x122, 3, 3, "V", "V V V", false], # 126
432
+ "LOOKUP"=> [0x01c, 2, 3, "V", "V R R", false], # 127
433
+ "LOWER"=> [0x070, 1, 1, "V", "V", false], # 128
434
+ "MATCH"=> [0x040, 2, 3, "V", "V R R", false], # 129
435
+ "MAX"=> [0x007, 1, 30, "V", "R ...", false], # 130
436
+ "MAXA"=> [0x16a, 1, 30, "V", "R ...", false], # 131
437
+ "MDETERM"=> [0x0a3, 1, 1, "V", "A", false], # 132
438
+ "MEDIAN"=> [0x0e3, 1, 30, "V", "R ...", false], # 133
439
+ "MID"=> [0x01f, 3, 3, "V", "V V V", false], # 134
440
+ "MIDB"=> [0x0d2, 3, 3, "V", "V V V", false], # 135
441
+ "MIN"=> [0x006, 1, 30, "V", "R ...", false], # 136
442
+ "MINA"=> [0x16b, 1, 30, "V", "R ...", false], # 137
443
+ "MINUTE"=> [0x048, 1, 1, "V", "V", false], # 138
444
+ "MINVERSE"=> [0x0a4, 1, 1, "A", "A", false], # 139
445
+ "MIRR"=> [0x03d, 3, 3, "V", "R V V", false], # 140
446
+ "MMULT"=> [0x0a5, 2, 2, "A", "A A", false], # 141
447
+ "MNORMSINV"=> [0x128, 1, 1, "V", "V", false], # 142
448
+ "MOD"=> [0x027, 2, 2, "V", "V V", false], # 143
449
+ "MODE"=> [0x14a, 1, 30, "V", "A ...", false], # 144
450
+ "MONTH"=> [0x044, 1, 1, "V", "V", false], # 145
451
+ "N"=> [0x083, 1, 1, "V", "R", false], # 146
452
+ "NA"=> [0x00a, 0, 0, "V", "-", false], # 147
453
+ "NEGBINOMDIST"=> [0x124, 3, 3, "V", "V V V", false], # 148
454
+ "NORMDIST"=> [0x125, 4, 4, "V", "V V V V", false], # 149
455
+ "NORMINV"=> [0x127, 3, 3, "V", "V V V", false], # 150
456
+ "NORMSDIST"=> [0x126, 1, 1, "V", "V", false], # 151
457
+ "NOT"=> [0x026, 1, 1, "V", "V", false], # 152
458
+ "NOW"=> [0x04a, 0, 0, "V", "-", true], # 153
459
+ "NPER"=> [0x03a, 3, 5, "V", "V V V V V", false], # 154
460
+ "NPV"=> [0x00b, 2, 30, "V", "V R ...", false], # 155
461
+ "NUMBERSTRING"=> [0x161, 2, 2, "V", "V V", false], # 156
462
+ "ODD"=> [0x12a, 1, 1, "V", "V", false], # 157
463
+ "OFFSET"=> [0x04e, 3, 5, "R", "R V V V V", true], # 158
464
+ "OR"=> [0x025, 1, 30, "V", "R ...", false], # 159
465
+ "PEARSON"=> [0x138, 2, 2, "V", "A A", false], # 160
466
+ "PERCENTILE"=> [0x148, 2, 2, "V", "R V", false], # 161
467
+ "PERCENTRANK"=> [0x149, 2, 3, "V", "R V V", false], # 162
468
+ "PERMUT"=> [0x12b, 2, 2, "V", "V V", false], # 163
469
+ "PHONETIC"=> [0x168, 1, 1, "V", "R", false], # 164
470
+ "PI"=> [0x013, 0, 0, "V", "-", false], # 165
471
+ "PMT"=> [0x03b, 3, 5, "V", "V V V V V", false], # 166
472
+ "POISSON"=> [0x12c, 3, 3, "V", "V V V", false], # 167
473
+ "POWER"=> [0x151, 2, 2, "V", "V V", false], # 168
474
+ "PPMT"=> [0x0a8, 4, 6, "V", "V V V V V V", false], # 169
475
+ "PROB"=> [0x13d, 3, 4, "V", "A A V V", false], # 170
476
+ "PRODUCT"=> [0x0b7, 0, 30, "V", "R ...", false], # 171
477
+ "PROPER"=> [0x072, 1, 1, "V", "V", false], # 172
478
+ "PV"=> [0x038, 3, 5, "V", "V V V V V", false], # 173
479
+ "QUARTILE"=> [0x147, 2, 2, "V", "R V", false], # 174
480
+ "RADIANS"=> [0x156, 1, 1, "V", "V", false], # 175
481
+ "RAND"=> [0x03f, 0, 0, "V", "-", true], # 176
482
+ "RANK"=> [0x0d8, 2, 3, "V", "V R V", false], # 177
483
+ "RATE"=> [0x03c, 3, 6, "V", "V V V V V V", false], # 178
484
+ "REPLACE"=> [0x077, 4, 4, "V", "V V V V", false], # 179
485
+ "REPLACEB"=> [0x0cf, 4, 4, "V", "V V V V", false], # 180
486
+ "REPT"=> [0x01e, 2, 2, "V", "V V", false], # 181
487
+ "RIGHT"=> [0x074, 1, 2, "V", "V V", false], # 182
488
+ "RIGHTB"=> [0x0d1, 1, 2, "V", "V V", false], # 183
489
+ "ROMAN"=> [0x162, 1, 2, "V", "V V", false], # 184
490
+ "ROUND"=> [0x01b, 2, 2, "V", "V V", false], # 185
491
+ "ROUNDDOWN"=> [0x0d5, 2, 2, "V", "V V", false], # 186
492
+ "ROUNDUP"=> [0x0d4, 2, 2, "V", "V V", false], # 187
493
+ "ROW"=> [0x008, 0, 1, "V", "R", false], # 188
494
+ "ROWS"=> [0x04c, 1, 1, "V", "R", false], # 189
495
+ "RSQ"=> [0x139, 2, 2, "V", "A A", false], # 190
496
+ "SEARCH"=> [0x052, 2, 3, "V", "V V V", false], # 191
497
+ "SEARCHB"=> [0x0ce, 2, 3, "V", "V V V", false], # 192
498
+ "SECOND"=> [0x049, 1, 1, "V", "V", false], # 193
499
+ "SIGN"=> [0x01a, 1, 1, "V", "V", false], # 194
500
+ "SIN"=> [0x00f, 1, 1, "V", "V", false], # 195
501
+ "SINH"=> [0x0e5, 1, 1, "V", "V", false], # 196
502
+ "SKEW"=> [0x143, 1, 30, "V", "R ...", false], # 197
503
+ "SLN"=> [0x08e, 3, 3, "V", "V V V", false], # 198
504
+ "SLOPE"=> [0x13b, 2, 2, "V", "A A", false], # 199
505
+ "SMALL"=> [0x146, 2, 2, "V", "R V", false], # 200
506
+ "SQRT"=> [0x014, 1, 1, "V", "V", false], # 201
507
+ "STANDARDIZE"=> [0x129, 3, 3, "V", "V V V", false], # 202
508
+ "STDEV"=> [0x00c, 1, 30, "V", "R ...", false], # 203
509
+ "STDEVA"=> [0x16e, 1, 30, "V", "R ...", false], # 204
510
+ "STDEVP"=> [0x0c1, 1, 30, "V", "R ...", false], # 205
511
+ "STDEVPA"=> [0x16c, 1, 30, "V", "R ...", false], # 206
512
+ "STEYX"=> [0x13a, 2, 2, "V", "A A", false], # 207
513
+ "SUBSTITUTE"=> [0x078, 3, 4, "V", "V V V V", false], # 208
514
+ "SUBTOTAL"=> [0x158, 2, 30, "V", "V R ...", false], # 209
515
+ "SUM"=> [0x004, 0, 30, "V", "R ...", false], # 210
516
+ "SUMIF"=> [0x159, 2, 3, "V", "R V R", false], # 211
517
+ "SUMPRODUCT"=> [0x0e4, 1, 30, "V", "A ...", false], # 212
518
+ "SUMSQ"=> [0x141, 0, 30, "V", "R ...", false], # 213
519
+ "SUMX2MY2"=> [0x130, 2, 2, "V", "A A", false], # 214
520
+ "SUMX2PY2"=> [0x131, 2, 2, "V", "A A", false], # 215
521
+ "SUMXMY2"=> [0x12f, 2, 2, "V", "A A", false], # 216
522
+ "SYD"=> [0x08f, 4, 4, "V", "V V V V", false], # 217
523
+ "T"=> [0x082, 1, 1, "V", "R", false], # 218
524
+ "TAN"=> [0x011, 1, 1, "V", "V", false], # 219
525
+ "TANH"=> [0x0e7, 1, 1, "V", "V", false], # 220
526
+ "TDIST"=> [0x12d, 3, 3, "V", "V V V", false], # 221
527
+ "TEXT"=> [0x030, 2, 2, "V", "V V", false], # 222
528
+ "TIME"=> [0x042, 3, 3, "V", "V V V", false], # 223
529
+ "TIMEVALUE"=> [0x08d, 1, 1, "V", "V", false], # 224
530
+ "TINV"=> [0x14c, 2, 2, "V", "V V", false], # 225
531
+ "TODAY"=> [0x0dd, 0, 0, "V", "-", true], # 226
532
+ "TRANSPOSE"=> [0x053, 1, 1, "A", "A", false], # 227
533
+ "TREND"=> [0x032, 1, 4, "A", "R R R V", false], # 228
534
+ "TRIM"=> [0x076, 1, 1, "V", "V", false], # 229
535
+ "TRIMMEAN"=> [0x14b, 2, 2, "V", "R V", false], # 230
536
+ "true"=> [0x022, 0, 0, "V", "-", false], # 231
537
+ "TRUNC"=> [0x0c5, 1, 2, "V", "V V", false], # 232
538
+ "TTEST"=> [0x13c, 4, 4, "V", "A A V V", false], # 233
539
+ "TYPE"=> [0x056, 1, 1, "V", "V", false], # 234
540
+ "UPPER"=> [0x071, 1, 1, "V", "V", false], # 235
541
+ "USDOLLAR"=> [0x0cc, 1, 2, "V", "V V", false], # 236
542
+ "VALUE"=> [0x021, 1, 1, "V", "V", false], # 237
543
+ "VAR"=> [0x02e, 1, 30, "V", "R ...", false], # 238
544
+ "VARA"=> [0x16f, 1, 30, "V", "R ...", false], # 239
545
+ "VARP"=> [0x0c2, 1, 30, "V", "R ...", false], # 240
546
+ "VARPA"=> [0x16d, 1, 30, "V", "R ...", false], # 241
547
+ "VDB"=> [0x0de, 5, 7, "V", "V V V V V V V", false], # 242
548
+ "VLOOKUP"=> [0x066, 3, 4, "V", "V R R V", false], # 243
549
+ "WEEKDAY"=> [0x046, 1, 2, "V", "V V", false], # 244
550
+ "WEIBULL"=> [0x12e, 4, 4, "V", "V V V V", false], # 245
551
+ "YEAR"=> [0x045, 1, 1, "V", "V", false], # 246
552
+ "ZTEST"=> [0x144, 2, 3, "V", "R V V", false] # 247
553
+ }
554
+
555
+
556
+ StdFuncByNum = {
557
+ 0x000=> [ "COUNT", 0, 30, "V", "R ...", false], # 1
558
+ 0x001=> [ "IF", 2, 3, "R", "V R R", false], # 2
559
+ 0x002=> [ "ISNA", 1, 1, "V", "V", false], # 3
560
+ 0x003=> [ "ISERROR", 1, 1, "V", "V", false], # 4
561
+ 0x004=> [ "SUM", 0, 30, "V", "R ...", false], # 5
562
+ 0x005=> [ "AVERAGE", 1, 30, "V", "R ...", false], # 6
563
+ 0x006=> [ "MIN", 1, 30, "V", "R ...", false], # 7
564
+ 0x007=> [ "MAX", 1, 30, "V", "R ...", false], # 8
565
+ 0x008=> [ "ROW", 0, 1, "V", "R", false], # 9
566
+ 0x009=> [ "COLUMN", 0, 1, "V", "R", false], # 10
567
+ 0x00a=> [ "NA", 0, 0, "V", "-", false], # 11
568
+ 0x00b=> [ "NPV", 2, 30, "V", "V R ...", false], # 12
569
+ 0x00c=> [ "STDEV", 1, 30, "V", "R ...", false], # 13
570
+ 0x00d=> [ "DOLLAR", 1, 2, "V", "V V", false], # 14
571
+ 0x00e=> [ "FIXED", 2, 3, "V", "V V V", false], # 15
572
+ 0x00f=> [ "SIN", 1, 1, "V", "V", false], # 16
573
+ 0x010=> [ "COS", 1, 1, "V", "V", false], # 17
574
+ 0x011=> [ "TAN", 1, 1, "V", "V", false], # 18
575
+ 0x012=> [ "ARCTAN", 1, 1, "V", "V", false], # 19
576
+ 0x013=> [ "PI", 0, 0, "V", "-", false], # 20
577
+ 0x014=> [ "SQRT", 1, 1, "V", "V", false], # 21
578
+ 0x015=> [ "EXP", 1, 1, "V", "V", false], # 22
579
+ 0x016=> [ "LN", 1, 1, "V", "V", false], # 23
580
+ 0x017=> [ "LOG10", 1, 1, "V", "V", false], # 24
581
+ 0x018=> [ "ABS", 1, 1, "V", "V", false], # 25
582
+ 0x019=> [ "INT", 1, 1, "V", "V", false], # 26
583
+ 0x01a=> [ "SIGN", 1, 1, "V", "V", false], # 27
584
+ 0x01b=> [ "ROUND", 2, 2, "V", "V V", false], # 28
585
+ 0x01c=> [ "LOOKUP", 2, 3, "V", "V R R", false], # 29
586
+ 0x01d=> [ "INDEX", 2, 4, "R", "R V V V", false], # 30
587
+ 0x01e=> [ "REPT", 2, 2, "V", "V V", false], # 31
588
+ 0x01f=> [ "MID", 3, 3, "V", "V V V", false], # 32
589
+ 0x020=> [ "LEN", 1, 1, "V", "V", false], # 33
590
+ 0x021=> [ "VALUE", 1, 1, "V", "V", false], # 34
591
+ 0x022=> [ "true", 0, 0, "V", "-", false], # 35
592
+ 0x023=> [ "false", 0, 0, "V", "-", false], # 36
593
+ 0x024=> [ "AND", 1, 30, "V", "R ...", false], # 37
594
+ 0x025=> [ "OR", 1, 30, "V", "R ...", false], # 38
595
+ 0x026=> [ "NOT", 1, 1, "V", "V", false], # 39
596
+ 0x027=> [ "MOD", 2, 2, "V", "V V", false], # 40
597
+ 0x028=> [ "DCOUNT", 3, 3, "V", "R R R", false], # 41
598
+ 0x029=> [ "DSUM", 3, 3, "V", "R R R", false], # 42
599
+ 0x02a=> [ "DAVERAGE", 3, 3, "V", "R R R", false], # 43
600
+ 0x02b=> [ "DMIN", 3, 3, "V", "R R R", false], # 44
601
+ 0x02c=> [ "DMAX", 3, 3, "V", "R R R", false], # 45
602
+ 0x02d=> [ "DSTDEV", 3, 3, "V", "R R R", false], # 46
603
+ 0x02e=> [ "VAR", 1, 30, "V", "R ...", false], # 47
604
+ 0x02f=> [ "DVAR", 3, 3, "V", "R R R", false], # 48
605
+ 0x030=> [ "TEXT", 2, 2, "V", "V V", false], # 49
606
+ 0x031=> [ "LINEST", 1, 4, "A", "R R V V", false], # 50
607
+ 0x032=> [ "TREND", 1, 4, "A", "R R R V", false], # 51
608
+ 0x033=> [ "LOGEST", 1, 4, "A", "R R V V", false], # 52
609
+ 0x034=> [ "GROWTH", 1, 4, "A", "R R R V", false], # 53
610
+ 0x038=> [ "PV", 3, 5, "V", "V V V V V", false], # 54
611
+ 0x039=> [ "FV", 3, 5, "V", "V V V V V", false], # 55
612
+ 0x03a=> [ "NPER", 3, 5, "V", "V V V V V", false], # 56
613
+ 0x03b=> [ "PMT", 3, 5, "V", "V V V V V", false], # 57
614
+ 0x03c=> [ "RATE", 3, 6, "V", "V V V V V V", false], # 58
615
+ 0x03d=> [ "MIRR", 3, 3, "V", "R V V", false], # 59
616
+ 0x03e=> [ "IRR", 1, 2, "V", "R V", false], # 60
617
+ 0x03f=> [ "RAND", 0, 0, "V", "-", true], # 61
618
+ 0x040=> [ "MATCH", 2, 3, "V", "V R R", false], # 62
619
+ 0x041=> [ "DATE", 3, 3, "V", "V V V", false], # 63
620
+ 0x042=> [ "TIME", 3, 3, "V", "V V V", false], # 64
621
+ 0x043=> [ "DAY", 1, 1, "V", "V", false], # 65
622
+ 0x044=> [ "MONTH", 1, 1, "V", "V", false], # 66
623
+ 0x045=> [ "YEAR", 1, 1, "V", "V", false], # 67
624
+ 0x046=> [ "WEEKDAY", 1, 2, "V", "V V", false], # 68
625
+ 0x047=> [ "HOUR", 1, 1, "V", "V", false], # 69
626
+ 0x048=> [ "MINUTE", 1, 1, "V", "V", false], # 70
627
+ 0x049=> [ "SECOND", 1, 1, "V", "V", false], # 71
628
+ 0x04a=> [ "NOW", 0, 0, "V", "-", true], # 72
629
+ 0x04b=> [ "AREAS", 1, 1, "V", "R", false], # 73
630
+ 0x04c=> [ "ROWS", 1, 1, "V", "R", false], # 74
631
+ 0x04d=> [ "COLUMNS", 1, 1, "V", "R", false], # 75
632
+ 0x04e=> [ "OFFSET", 3, 5, "R", "R V V V V", true], # 76
633
+ 0x052=> [ "SEARCH", 2, 3, "V", "V V V", false], # 77
634
+ 0x053=> [ "TRANSPOSE", 1, 1, "A", "A", false], # 78
635
+ 0x056=> [ "TYPE", 1, 1, "V", "V", false], # 79
636
+ 0x061=> [ "ATAN2", 2, 2, "V", "V V", false], # 80
637
+ 0x062=> [ "ASIN", 1, 1, "V", "V", false], # 81
638
+ 0x063=> [ "ACOS", 1, 1, "V", "V", false], # 82
639
+ 0x064=> [ "CHOOSE", 2, 30, "R", "V R ...", false], # 83
640
+ 0x065=> [ "HLOOKUP", 3, 4, "V", "V R R V", false], # 84
641
+ 0x066=> [ "VLOOKUP", 3, 4, "V", "V R R V", false], # 85
642
+ 0x069=> [ "ISREF", 1, 1, "V", "R", false], # 86
643
+ 0x06d=> [ "LOG", 1, 2, "V", "V V", false], # 87
644
+ 0x06f=> [ "CHAR", 1, 1, "V", "V", false], # 88
645
+ 0x070=> [ "LOWER", 1, 1, "V", "V", false], # 89
646
+ 0x071=> [ "UPPER", 1, 1, "V", "V", false], # 90
647
+ 0x072=> [ "PROPER", 1, 1, "V", "V", false], # 91
648
+ 0x073=> [ "LEFT", 1, 2, "V", "V V", false], # 92
649
+ 0x074=> [ "RIGHT", 1, 2, "V", "V V", false], # 93
650
+ 0x075=> [ "EXACT", 2, 2, "V", "V V", false], # 94
651
+ 0x076=> [ "TRIM", 1, 1, "V", "V", false], # 95
652
+ 0x077=> [ "REPLACE", 4, 4, "V", "V V V V", false], # 96
653
+ 0x078=> [ "SUBSTITUTE", 3, 4, "V", "V V V V", false], # 97
654
+ 0x079=> [ "CODE", 1, 1, "V", "V", false], # 98
655
+ 0x07c=> [ "FIND", 2, 3, "V", "V V V", false], # 99
656
+ 0x07d=> [ "CELL", 1, 2, "V", "V R", true], # 100
657
+ 0x07e=> [ "ISERR", 1, 1, "V", "V", false], # 101
658
+ 0x07f=> [ "ISTEXT", 1, 1, "V", "V", false], # 102
659
+ 0x080=> [ "ISNUMBER", 1, 1, "V", "V", false], # 103
660
+ 0x081=> [ "ISBLANK", 1, 1, "V", "V", false], # 104
661
+ 0x082=> [ "T", 1, 1, "V", "R", false], # 105
662
+ 0x083=> [ "N", 1, 1, "V", "R", false], # 106
663
+ 0x08c=> [ "DATEVALUE", 1, 1, "V", "V", false], # 107
664
+ 0x08d=> [ "TIMEVALUE", 1, 1, "V", "V", false], # 108
665
+ 0x08e=> [ "SLN", 3, 3, "V", "V V V", false], # 109
666
+ 0x08f=> [ "SYD", 4, 4, "V", "V V V V", false], # 110
667
+ 0x090=> [ "DDB", 4, 5, "V", "V V V V V", false], # 111
668
+ 0x094=> [ "INDIRECT", 1, 2, "R", "V V", true], # 112
669
+ 0x0a2=> [ "CLEAN", 1, 1, "V", "V", false], # 113
670
+ 0x0a3=> [ "MDETERM", 1, 1, "V", "A", false], # 114
671
+ 0x0a4=> [ "MINVERSE", 1, 1, "A", "A", false], # 115
672
+ 0x0a5=> [ "MMULT", 2, 2, "A", "A A", false], # 116
673
+ 0x0a7=> [ "IPMT", 4, 6, "V", "V V V V V V", false], # 117
674
+ 0x0a8=> [ "PPMT", 4, 6, "V", "V V V V V V", false], # 118
675
+ 0x0a9=> [ "COUNTA", 0, 30, "V", "R ...", false], # 119
676
+ 0x0b7=> [ "PRODUCT", 0, 30, "V", "R ...", false], # 120
677
+ 0x0b8=> [ "FACT", 1, 1, "V", "V", false], # 121
678
+ 0x0bf=> [ "DPRODUCT", 3, 3, "V", "R R R", false], # 122
679
+ 0x0c0=> [ "ISNONTEXT", 1, 1, "V", "V", false], # 123
680
+ 0x0c1=> [ "STDEVP", 1, 30, "V", "R ...", false], # 124
681
+ 0x0c2=> [ "VARP", 1, 30, "V", "R ...", false], # 125
682
+ 0x0c3=> [ "DSTDEVP", 3, 3, "V", "R R R", false], # 126
683
+ 0x0c4=> [ "DVARP", 3, 3, "V", "R R R", false], # 127
684
+ 0x0c5=> [ "TRUNC", 1, 2, "V", "V V", false], # 128
685
+ 0x0c6=> [ "ISLOGICAL", 1, 1, "V", "V", false], # 129
686
+ 0x0c7=> [ "DCOUNTA", 3, 3, "V", "R R R", false], # 130
687
+ 0x0cc=> [ "USDOLLAR", 1, 2, "V", "V V", false], # 131
688
+ 0x0cd=> [ "FINDB", 2, 3, "V", "V V V", false], # 132
689
+ 0x0ce=> [ "SEARCHB", 2, 3, "V", "V V V", false], # 133
690
+ 0x0cf=> [ "REPLACEB", 4, 4, "V", "V V V V", false], # 134
691
+ 0x0d0=> [ "LEFTB", 1, 2, "V", "V V", false], # 135
692
+ 0x0d1=> [ "RIGHTB", 1, 2, "V", "V V", false], # 136
693
+ 0x0d2=> [ "MIDB", 3, 3, "V", "V V V", false], # 137
694
+ 0x0d3=> [ "LENB", 1, 1, "V", "V", false], # 138
695
+ 0x0d4=> [ "ROUNDUP", 2, 2, "V", "V V", false], # 139
696
+ 0x0d5=> [ "ROUNDDOWN", 2, 2, "V", "V V", false], # 140
697
+ 0x0d6=> [ "ASC", 1, 1, "V", "V", false], # 141
698
+ 0x0d7=> [ "DBSC", 1, 1, "V", "V", false], # 142
699
+ 0x0d8=> [ "RANK", 2, 3, "V", "V R V", false], # 143
700
+ 0x0db=> [ "ADDRESS", 2, 5, "V", "V V V V V", false], # 144
701
+ 0x0dc=> [ "DAYS360", 2, 3, "V", "V V V", false], # 145
702
+ 0x0dd=> [ "TODAY", 0, 0, "V", "-", true], # 146
703
+ 0x0de=> [ "VDB", 5, 7, "V", "V V V V V V V", false], # 147
704
+ 0x0e3=> [ "MEDIAN", 1, 30, "V", "R ...", false], # 148
705
+ 0x0e4=> [ "SUMPRODUCT", 1, 30, "V", "A ...", false], # 149
706
+ 0x0e5=> [ "SINH", 1, 1, "V", "V", false], # 150
707
+ 0x0e6=> [ "COSH", 1, 1, "V", "V", false], # 151
708
+ 0x0e7=> [ "TANH", 1, 1, "V", "V", false], # 152
709
+ 0x0e8=> [ "ASINH", 1, 1, "V", "V", false], # 153
710
+ 0x0e9=> [ "ACOSH", 1, 1, "V", "V", false], # 154
711
+ 0x0ea=> [ "ATANH", 1, 1, "V", "V", false], # 155
712
+ 0x0eb=> [ "DGET", 3, 3, "V", "R R R", false], # 156
713
+ 0x0f4=> [ "INFO", 1, 1, "V", "V", false], # 157
714
+ 0x0f7=> [ "DB", 4, 5, "V", "V V V V V", false], # 158
715
+ 0x0fc=> [ "FREQUENCY", 2, 2, "A", "R R", false], # 159
716
+ 0x105=> [ "ERROR.TYPE", 1, 1, "V", "V", false], # 160
717
+ 0x10d=> [ "AVEDEV", 1, 30, "V", "R ...", false], # 161
718
+ 0x10e=> [ "BETADIST", 3, 5, "V", "V V V V V", false], # 162
719
+ 0x10f=> [ "GAMMALN", 1, 1, "V", "V", false], # 163
720
+ 0x110=> [ "BETAINV", 3, 5, "V", "V V V V V", false], # 164
721
+ 0x111=> [ "BINOMDIST", 4, 4, "V", "V V V V", false], # 165
722
+ 0x112=> [ "CHIDIST", 2, 2, "V", "V V", false], # 166
723
+ 0x113=> [ "CHIINV", 2, 2, "V", "V V", false], # 167
724
+ 0x114=> [ "COMBIN", 2, 2, "V", "V V", false], # 168
725
+ 0x115=> [ "CONFIDENCE", 3, 3, "V", "V V V", false], # 169
726
+ 0x116=> [ "CRITBINOM", 3, 3, "V", "V V V", false], # 170
727
+ 0x117=> [ "EVEN", 1, 1, "V", "V", false], # 171
728
+ 0x118=> [ "EXPONDIST", 3, 3, "V", "V V V", false], # 172
729
+ 0x119=> [ "FDIST", 3, 3, "V", "V V V", false], # 173
730
+ 0x11a=> [ "FINV", 3, 3, "V", "V V V", false], # 174
731
+ 0x11b=> [ "FISHER", 1, 1, "V", "V", false], # 175
732
+ 0x11c=> [ "FISHERINV", 1, 1, "V", "V", false], # 176
733
+ 0x11d=> [ "FLOOR", 2, 2, "V", "V V", false], # 177
734
+ 0x11e=> [ "GAMMADIST", 4, 4, "V", "V V V V", false], # 178
735
+ 0x11f=> [ "GAMMAINV", 3, 3, "V", "V V V", false], # 179
736
+ 0x120=> [ "CEILING", 2, 2, "V", "V V", false], # 180
737
+ 0x121=> [ "HYPGEOMVERT", 4, 4, "V", "V V V V", false], # 181
738
+ 0x122=> [ "LOGNORMDIST", 3, 3, "V", "V V V", false], # 182
739
+ 0x123=> [ "LOGINV", 3, 3, "V", "V V V", false], # 183
740
+ 0x124=> ["NEGBINOMDIST", 3, 3, "V", "V V V", false], # 184
741
+ 0x125=> [ "NORMDIST", 4, 4, "V", "V V V V", false], # 185
742
+ 0x126=> [ "NORMSDIST", 1, 1, "V", "V", false], # 186
743
+ 0x127=> [ "NORMINV", 3, 3, "V", "V V V", false], # 187
744
+ 0x128=> [ "MNORMSINV", 1, 1, "V", "V", false], # 188
745
+ 0x129=> [ "STANDARDIZE", 3, 3, "V", "V V V", false], # 189
746
+ 0x12a=> [ "ODD", 1, 1, "V", "V", false], # 190
747
+ 0x12b=> [ "PERMUT", 2, 2, "V", "V V", false], # 191
748
+ 0x12c=> [ "POISSON", 3, 3, "V", "V V V", false], # 192
749
+ 0x12d=> [ "TDIST", 3, 3, "V", "V V V", false], # 193
750
+ 0x12e=> [ "WEIBULL", 4, 4, "V", "V V V V", false], # 194
751
+ 0x12f=> [ "SUMXMY2", 2, 2, "V", "A A", false], # 195
752
+ 0x130=> [ "SUMX2MY2", 2, 2, "V", "A A", false], # 196
753
+ 0x131=> [ "SUMX2PY2", 2, 2, "V", "A A", false], # 197
754
+ 0x132=> [ "CHITEST", 2, 2, "V", "A A", false], # 198
755
+ 0x133=> [ "CORREL", 2, 2, "V", "A A", false], # 199
756
+ 0x134=> [ "COVAR", 2, 2, "V", "A A", false], # 200
757
+ 0x135=> [ "FORECAST", 3, 3, "V", "V A A", false], # 201
758
+ 0x136=> [ "FTEST", 2, 2, "V", "A A", false], # 202
759
+ 0x137=> [ "INTERCEPT", 2, 2, "V", "A A", false], # 203
760
+ 0x138=> [ "PEARSON", 2, 2, "V", "A A", false], # 204
761
+ 0x139=> [ "RSQ", 2, 2, "V", "A A", false], # 205
762
+ 0x13a=> [ "STEYX", 2, 2, "V", "A A", false], # 206
763
+ 0x13b=> [ "SLOPE", 2, 2, "V", "A A", false], # 207
764
+ 0x13c=> [ "TTEST", 4, 4, "V", "A A V V", false], # 208
765
+ 0x13d=> [ "PROB", 3, 4, "V", "A A V V", false], # 209
766
+ 0x13e=> [ "DEVSQ", 1, 30, "V", "R ...", false], # 210
767
+ 0x13f=> [ "GEOMEAN", 1, 30, "V", "R ...", false], # 211
768
+ 0x140=> [ "HARMEAN", 1, 30, "V", "R ...", false], # 212
769
+ 0x141=> [ "SUMSQ", 0, 30, "V", "R ...", false], # 213
770
+ 0x142=> [ "KURT", 1, 30, "V", "R ...", false], # 214
771
+ 0x143=> [ "SKEW", 1, 30, "V", "R ...", false], # 215
772
+ 0x144=> [ "ZTEST", 2, 3, "V", "R V V", false], # 216
773
+ 0x145=> [ "LARGE", 2, 2, "V", "R V", false], # 217
774
+ 0x146=> [ "SMALL", 2, 2, "V", "R V", false], # 218
775
+ 0x147=> [ "QUARTILE", 2, 2, "V", "R V", false], # 219
776
+ 0x148=> [ "PERCENTILE", 2, 2, "V", "R V", false], # 220
777
+ 0x149=> [ "PERCENTRANK", 2, 3, "V", "R V V", false], # 221
778
+ 0x14a=> [ "MODE", 1, 30, "V", "A ...", false], # 222
779
+ 0x14b=> [ "TRIMMEAN", 2, 2, "V", "R V", false], # 223
780
+ 0x14c=> [ "TINV", 2, 2, "V", "V V", false], # 224
781
+ 0x150=> [ "CONCATENATE", 0, 30, "V", "V ...", false], # 225
782
+ 0x151=> [ "POWER", 2, 2, "V", "V V", false], # 226
783
+ 0x156=> [ "RADIANS", 1, 1, "V", "V", false], # 227
784
+ 0x157=> [ "DEGREES", 1, 1, "V", "V", false], # 228
785
+ 0x158=> [ "SUBTOTAL", 2, 30, "V", "V R ...", false], # 229
786
+ 0x159=> [ "SUMIF", 2, 3, "V", "R V R", false], # 230
787
+ 0x15a=> [ "COUNTIF", 2, 2, "V", "R V", false], # 231
788
+ 0x15b=> [ "COUNTBLANK", 1, 1, "V", "R", false], # 232
789
+ 0x15e=> [ "ISPMT", 4, 4, "V", "V V V V", false], # 233
790
+ 0x15f=> [ "DATEDIF", 3, 3, "V", "V V V", false], # 234
791
+ 0x160=> [ "DATESTRING", 1, 1, "V", "V", false], # 235
792
+ 0x161=> ["NUMBERSTRING", 2, 2, "V", "V V", false], # 236
793
+ 0x162=> [ "ROMAN", 1, 2, "V", "V V", false], # 237
794
+ 0x166=> ["GETPIVOTDATA", 2, 30, "A", "-", false], # 238
795
+ 0x167=> [ "HYPERLINK", 1, 2, "V", "V V", false], # 239
796
+ 0x168=> [ "PHONETIC", 1, 1, "V", "R", false], # 240
797
+ 0x169=> [ "AVERAGEA", 1, 30, "V", "R ...", false], # 241
798
+ 0x16a=> [ "MAXA", 1, 30, "V", "R ...", false], # 242
799
+ 0x16b=> [ "MINA", 1, 30, "V", "R ...", false], # 243
800
+ 0x16c=> [ "STDEVPA", 1, 30, "V", "R ...", false], # 244
801
+ 0x16d=> [ "VARPA", 1, 30, "V", "R ...", false], # 245
802
+ 0x16e=> [ "STDEVA", 1, 30, "V", "R ...", false], # 246
803
+ 0x16f=> [ "VARA", 1, 30, "V", "R ...", false] # 247
804
+ }
805
+
806
+
807
+ # Formulas Parse things
808
+
809
+ PtgExp = 0x01
810
+ PtgTbl = 0x02
811
+ PtgAdd = 0x03
812
+ PtgSub = 0x04
813
+ PtgMul = 0x05
814
+ PtgDiv = 0x06
815
+ PtgPower = 0x07
816
+ PtgConcat = 0x08
817
+ PtgLT = 0x09
818
+ PtgLE = 0x0a
819
+ PtgEQ = 0x0b
820
+ PtgGE = 0x0c
821
+ PtgGT = 0x0d
822
+ PtgNE = 0x0e
823
+ PtgIsect = 0x0f
824
+ PtgUnion = 0x10
825
+ PtgRange = 0x11
826
+ PtgUplus = 0x12
827
+ PtgUminus = 0x13
828
+ PtgPercent = 0x14
829
+ PtgParen = 0x15
830
+ PtgMissArg = 0x16
831
+ PtgStr = 0x17
832
+ PtgExtend = 0x18
833
+ PtgAttr = 0x19
834
+ PtgSheet = 0x1a
835
+ PtgEndSheet = 0x1b
836
+ PtgErr = 0x1c
837
+ PtgBool = 0x1d
838
+ PtgInt = 0x1e
839
+ PtgNum = 0x1f
840
+
841
+ PtgArrayR = 0x20
842
+ PtgFuncR = 0x21
843
+ PtgFuncVarR = 0x22
844
+ PtgNameR = 0x23
845
+ PtgRefR = 0x24
846
+ PtgAreaR = 0x25
847
+ PtgMemAreaR = 0x26
848
+ PtgMemErrR = 0x27
849
+ PtgMemNoMemR = 0x28
850
+ PtgMemFuncR = 0x29
851
+ PtgRefErrR = 0x2a
852
+ PtgAreaErrR = 0x2b
853
+ PtgRefNR = 0x2c
854
+ PtgAreaNR = 0x2d
855
+ PtgMemAreaNR = 0x2e
856
+ PtgMemNoMemNR = 0x2f
857
+ PtgNameXR = 0x39
858
+ PtgRef3dR = 0x3a
859
+ PtgArea3dR = 0x3b
860
+ PtgRefErr3dR = 0x3c
861
+ PtgAreaErr3dR = 0x3d
862
+
863
+ PtgArrayV = 0x40
864
+ PtgFuncV = 0x41
865
+ PtgFuncVarV = 0x42
866
+ PtgNameV = 0x43
867
+ PtgRefV = 0x44
868
+ PtgAreaV = 0x45
869
+ PtgMemAreaV = 0x46
870
+ PtgMemErrV = 0x47
871
+ PtgMemNoMemV = 0x48
872
+ PtgMemFuncV = 0x49
873
+ PtgRefErrV = 0x4a
874
+ PtgAreaErrV = 0x4b
875
+ PtgRefNV = 0x4c
876
+ PtgAreaNV = 0x4d
877
+ PtgMemAreaNV = 0x4e
878
+ PtgMemNoMemNV = 0x4f
879
+ PtgFuncCEV = 0x58
880
+ PtgNameXV = 0x59
881
+ PtgRef3dV = 0x5a
882
+ PtgArea3dV = 0x5b
883
+ PtgRefErr3dV = 0x5c
884
+ PtgAreaErr3dV = 0x5d
885
+
886
+ PtgArrayA = 0x60
887
+ PtgFuncA = 0x61
888
+ PtgFuncVarA = 0x62
889
+ PtgNameA = 0x63
890
+ PtgRefA = 0x64
891
+ PtgAreaA = 0x65
892
+ PtgMemAreaA = 0x66
893
+ PtgMemErrA = 0x67
894
+ PtgMemNoMemA = 0x68
895
+ PtgMemFuncA = 0x69
896
+ PtgRefErrA = 0x6a
897
+ PtgAreaErrA = 0x6b
898
+ PtgRefNA = 0x6c
899
+ PtgAreaNA = 0x6d
900
+ PtgMemAreaNA = 0x6e
901
+ PtgMemNoMemNA = 0x6f
902
+ PtgFuncCEA = 0x78
903
+ PtgNameXA = 0x79
904
+ PtgRef3dA = 0x7a
905
+ PtgArea3dA = 0x7b
906
+ PtgRefErr3dA = 0x7c
907
+ PtgAreaErr3dA = 0x7d
908
+
909
+
910
+ PtgNames = {
911
+ PtgExp => "ptgExp",
912
+ PtgTbl => "ptgTbl",
913
+ PtgAdd => "ptgAdd",
914
+ PtgSub => "ptgSub",
915
+ PtgMul => "ptgMul",
916
+ PtgDiv => "ptgDiv",
917
+ PtgPower => "ptgPower",
918
+ PtgConcat => "ptgConcat",
919
+ PtgLT => "ptgLT",
920
+ PtgLE => "ptgLE",
921
+ PtgEQ => "ptgEQ",
922
+ PtgGE => "ptgGE",
923
+ PtgGT => "ptgGT",
924
+ PtgNE => "ptgNE",
925
+ PtgIsect => "ptgIsect",
926
+ PtgUnion => "ptgUnion",
927
+ PtgRange => "ptgRange",
928
+ PtgUplus => "ptgUplus",
929
+ PtgUminus => "ptgUminus",
930
+ PtgPercent => "ptgPercent",
931
+ PtgParen => "ptgParen",
932
+ PtgMissArg => "ptgMissArg",
933
+ PtgStr => "ptgStr",
934
+ PtgExtend => "ptgExtend",
935
+ PtgAttr => "ptgAttr",
936
+ PtgSheet => "ptgSheet",
937
+ PtgEndSheet => "ptgEndSheet",
938
+ PtgErr => "ptgErr",
939
+ PtgBool => "ptgBool",
940
+ PtgInt => "ptgInt",
941
+ PtgNum => "ptgNum",
942
+ PtgArrayR => "ptgArrayR",
943
+ PtgFuncR => "ptgFuncR",
944
+ PtgFuncVarR => "ptgFuncVarR",
945
+ PtgNameR => "ptgNameR",
946
+ PtgRefR => "ptgRefR",
947
+ PtgAreaR => "ptgAreaR",
948
+ PtgMemAreaR => "ptgMemAreaR",
949
+ PtgMemErrR => "ptgMemErrR",
950
+ PtgMemNoMemR => "ptgMemNoMemR",
951
+ PtgMemFuncR => "ptgMemFuncR",
952
+ PtgRefErrR => "ptgRefErrR",
953
+ PtgAreaErrR => "ptgAreaErrR",
954
+ PtgRefNR => "ptgRefNR",
955
+ PtgAreaNR => "ptgAreaNR",
956
+ PtgMemAreaNR => "ptgMemAreaNR",
957
+ PtgMemNoMemNR => "ptgMemNoMemNR",
958
+ PtgNameXR => "ptgNameXR",
959
+ PtgRef3dR => "ptgRef3dR",
960
+ PtgArea3dR => "ptgArea3dR",
961
+ PtgRefErr3dR => "ptgRefErr3dR",
962
+ PtgAreaErr3dR => "ptgAreaErr3dR",
963
+ PtgArrayV => "ptgArrayV",
964
+ PtgFuncV => "ptgFuncV",
965
+ PtgFuncVarV => "ptgFuncVarV",
966
+ PtgNameV => "ptgNameV",
967
+ PtgRefV => "ptgRefV",
968
+ PtgAreaV => "ptgAreaV",
969
+ PtgMemAreaV => "ptgMemAreaV",
970
+ PtgMemErrV => "ptgMemErrV",
971
+ PtgMemNoMemV => "ptgMemNoMemV",
972
+ PtgMemFuncV => "ptgMemFuncV",
973
+ PtgRefErrV => "ptgRefErrV",
974
+ PtgAreaErrV => "ptgAreaErrV",
975
+ PtgRefNV => "ptgRefNV",
976
+ PtgAreaNV => "ptgAreaNV",
977
+ PtgMemAreaNV => "ptgMemAreaNV",
978
+ PtgMemNoMemNV => "ptgMemNoMemNV",
979
+ PtgFuncCEV => "ptgFuncCEV",
980
+ PtgNameXV => "ptgNameXV",
981
+ PtgRef3dV => "ptgRef3dV",
982
+ PtgArea3dV => "ptgArea3dV",
983
+ PtgRefErr3dV => "ptgRefErr3dV",
984
+ PtgAreaErr3dV => "ptgAreaErr3dV",
985
+ PtgArrayA => "ptgArrayA",
986
+ PtgFuncA => "ptgFuncA",
987
+ PtgFuncVarA => "ptgFuncVarA",
988
+ PtgNameA => "ptgNameA",
989
+ PtgRefA => "ptgRefA",
990
+ PtgAreaA => "ptgAreaA",
991
+ PtgMemAreaA => "ptgMemAreaA",
992
+ PtgMemErrA => "ptgMemErrA",
993
+ PtgMemNoMemA => "ptgMemNoMemA",
994
+ PtgMemFuncA => "ptgMemFuncA",
995
+ PtgRefErrA => "ptgRefErrA",
996
+ PtgAreaErrA => "ptgAreaErrA",
997
+ PtgRefNA => "ptgRefNA",
998
+ PtgAreaNA => "ptgAreaNA",
999
+ PtgMemAreaNA => "ptgMemAreaNA",
1000
+ PtgMemNoMemNA => "ptgMemNoMemNA",
1001
+ PtgFuncCEA => "ptgFuncCEA",
1002
+ PtgNameXA => "ptgNameXA",
1003
+ PtgRef3dA => "ptgRef3dA",
1004
+ PtgArea3dA => "ptgArea3dA",
1005
+ PtgRefErr3dA => "ptgRefErr3dA",
1006
+ PtgAreaErr3dA => "ptgAreaErr3dA"
1007
+ }
1008
+
1009
+
1010
+ ErrorMsgByCode = {
1011
+ 0x00=> "#NULL!", # intersection of two cell ranges is empty
1012
+ 0x07=> "#DIV/0!", # division by zero
1013
+ 0x0F=> "#VALUE!", # wrong type of operand
1014
+ 0x17=> "#REF!", # illegal or deleted cell reference
1015
+ 0x1D=> "#NAME?", # wrong function or range name
1016
+ 0x24=> "#NUM!", # value range overflow
1017
+ 0x2A=> "#N/A!" # argument or function not available
1018
+ }
1019
+ end