2.4.223 RRDChgCell
The RRDChgCell record specifies a change cells revision.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
rrd (14 bytes) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
... |
vt |
vtOld |
A |
B |
C |
D |
E |
F |
G |
H |
I |
||||||||||||||||||||
ifmtDisp |
J |
K |
L |
reserved2 |
loc |
||||||||||||||||||||||||||
... |
cbOldVal |
||||||||||||||||||||||||||||||
... |
cetxpRst |
||||||||||||||||||||||||||||||
dxfOld (variable) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
dxf (variable) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
rkOld (optional) |
|||||||||||||||||||||||||||||||
numOld (optional) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
stOld (variable) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
besOld (optional) |
xpeOld (variable) |
||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
rk (optional) |
|||||||||||||||||||||||||||||||
num (optional) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
st (variable) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
bes (optional) |
xpe (variable) |
||||||||||||||||||||||||||||||
... |
rrd (14 bytes): An RRD structure that specifies the revision record information used to track changes in a shared workbook. Because this revision corresponds to a specific sheet, rrd.revt MUST be 0x0008, rrd.fDelAtEdgeOfSort MUST be 0x0000, rrd.revid MUST be greater than or equal to 0, and rrd.tabid MUST NOT be 0xFFFF.
vt (3 bits): An unsigned integer that specifies the type of the new cell contents. MUST be a value from the following table:
Value |
Meaning |
---|---|
0x0 |
New cell is blank. |
0x1 |
New cell contains an RkNumber value. |
0x2 |
New cell contains an Xnum (section 2.5.342) value. |
0x3 |
New cell contains an XLUnicodeRichExtendedString value. |
0x4 |
New cell contains a Bes value. |
0x5 |
New cell contains a CellParsedFormula value. |
vtOld (3 bits): An unsigned integer that specifies the type of the old cell contents. MUST be a value from the following table:
Value |
Meaning |
---|---|
0x0 |
Old cell is blank. |
0x1 |
Old cell contains an RkNumber value. |
0x2 |
Old cell contains an Xnum value. |
0x3 |
Old cell contains an XLUnicodeRichExtendedString value. |
0x4 |
Old cell contains a Bes value. |
0x5 |
Old cell contains a CellParsedFormula value. |
A - f123Prefix (1 bit): A bit that specifies whether prefix characters are present in the cell. Possible prefix characters include single quotation mark (0x27), double quotation mark (0x22), caret (0x5E), and backslash (0x5C).
B - unused (1 bit): Undefined and MUST be ignored.
C - fOldFmt (1 bit): A bit that specifies whether there is old formatting information available for this cell. If fOldFmt is 0x1 and fOldFmtNull is 0x0, dxfOld MUST exist.
D - fOldFmtNull (1 bit): A bit that specifies whether the old formatting information is empty. This value MUST be ignored if fOldFmt is 0. If fOldFmt is 0x1 and fOldFmtNull is 0x0, dxfOld MUST exist. If fOldFmt is 0x1 and fOldFmtNull is 0x1, old formatting information is available for the cell, but the old formatting information is not written to disk and dxfOld MUST NOT exist.
E - fXfDxf (1 bit): A bit that specifies that the affected cells will have their format reset to the format defined by the current cell style before applying any format from dxf, if present.
F - fStyXfDxf (1 bit): A bit that specifies that the format of the cell will be cleared before applying any format from dxf, if present.
G - fDxf (1 bit): A bit that specifies whether there was a formatting change for this cell. If fDxf is 0x1 and fDxfNull is 0x0, dxf MUST exist.
H - fDxfNull (1 bit): A bit that specifies whether the new formatting information is empty. This value MUST be ignored if fDxf is 0. If fDxf is 0x1 and fDxfNull is 0x0, dxf MUST exist. If fDxf is 0x1 and fDxfNull is 0x1, this means that there was a formatting change for this cell, but the dxf describing the formatting change MUST NOT exist.
I - reserved1 (2 bits): MUST be zero, and MUST be ignored.
ifmtDisp (8 bits): An unsigned integer that specifies the identifier of the number format to use to display the new cell contents. MUST be a value from the following table. For more information about how format strings are interpreted, see [ECMA-376] Part 4: Markup Language Reference, section 3.8.31.
Value |
Description |
Positive Value Format |
Negative Value Format |
Zero Format |
---|---|---|---|---|
0x0000 |
Automatic |
0 |
-0 |
0 |
0x0004 |
Number, two decimal places, use the 1000 separator (,) |
#,##0.00 |
-#,##0.00 |
0.00 |
0x000B |
Currency, two decimal places, use parentheses for negative values |
$#,##0.00 |
($#,##0.00) |
$0.00 |
0x000D |
Percentage, zero decimal places |
0% |
-0% |
0% |
0x000E |
Percentage, two decimal places |
0.00% |
-0.00% |
0.00% |
0x000F |
Scientific |
0.00E+00 |
-0.00E+00 |
0.00E+00 |
0x0010 |
Engineering |
##0.0E+0 |
-##0.0E+0 |
0.0E+0 |
0x0011 |
Fraction, up to one digit numerator and denominator |
# ?/? |
-# ?/? |
0 |
0x0012 |
Fraction, up to two digit numerator and denominator |
# ??/?? |
-# ??/?? |
0 |
0x0013 |
Date (MM-DD-YY) |
mm-dd-yy |
mm-dd-yy |
|
0x0015 |
Date (DD-MMM) |
d-mmm |
d-mmm |
|
0x0017 |
Time (H:MM AM/PM) |
h:mm AM/PM |
h:mm AM/PM |
|
0x001B |
Date/Time, 24 hour format (M/D/YY H:MM) |
m/d/yy h:mm |
m/d/yy h:mm |
|
0x0022 |
Accounting (currency with decimal point aligned, and centered minus-sign for 0-value), two decimal places, use currency symbol |
_($* #,##0.00_) |
_($* #,##0.00) |
_($* "-" ??_) |
J - fPhShow (1 bit): A bit that specifies whether the new cell contains a phonetic string.
K - fPhShowOld (1 bit): A bit that specifies whether the old cell contains a phonetic string.
L - fEOLFmlaUpdate (1 bit): A bit that specifies whether the new cell contents were changed because of an adjustment to the formula.
reserved2 (5 bits): MUST be zero, and MUST be ignored.
loc (4 bytes): An RgceLoc structure that specifies the location of the cell change revision.
cbOldVal (4 bytes): An unsigned integer that specifies the size of the old cell contents. If cbOldVal is greater than 0, the old cell contents immediately follow the cetxpRst field, then it is followed by the new cell contents. MUST be a value from the following table based on the value of vtOld:
vtOld |
cbOldVal |
---|---|
0x0 |
MUST be 0x00000000. |
0x1 |
MUST be 0x00000004. |
0x2 |
MUST be 0x00000008. |
0x3 |
MUST be equal to the size of the old XLUnicodeRichExtendedString. The size is calculated assuming all characters are double-byte characters. That is, if XLUnicodeRichExtendedString.fHighByte is 1, the calculation is made by using the size of XLUnicodeRichExtendedString. |
0x4 |
MUST be 0x00000002. |
0x5 |
MUST be greater than or equal to 0x00000018. |
cetxpRst (2 bytes): An unsigned integer that specifies the number of RRDRstEtxp records that follow this record.
dxfOld (variable): A DXFN structure that specifies the differential formatting for the old cell contents. This field MUST exist if fOldFmt is 0x1 and fOldFmtNull is 0x0.
dxf (variable): A DXFN structure that specifies the differential formatting for the new cell contents. This field MUST exist if fDxf is 0x1 and fDxfNull is 0x0.
rkOld (4 bytes): An RkNumber structure that specifies the old cell contents. This field MUST exist if and only if cbOldVal is greater than 0 and vtOld is 0x1.
numOld (8 bytes): An Xnum value that specifies the old cell contents. This field MUST exist if and only if cbOldVal is greater than 0 and vtOld is 0x2.
stOld (variable): An XLUnicodeRichExtendedString structure that specifies the old cell contents. This field MUST exist if and only if cbOldVal is greater than 0 and vtOld is 0x3.
besOld (2 bytes): A Bes structure that specifies the old cell contents. This field MUST exist if and only if cbOldVal is greater than 0 and vtOld is 0x4.
xpeOld (variable): A CellParsedFormula structure that specifies the old cell contents. This field MUST exist if and only if cbOldVal is greater than 0 and vtOld is 0x5.
rk (4 bytes): An RkNumber value that specifies the new cell contents. This field MUST exist if and only if vt is 0x1.
num (8 bytes): An Xnum value that specifies the new cell contents. This field MUST exist if and only if vt is 0x2.
st (variable): An XLUnicodeRichExtendedString structure that specifies the new cell contents. This field MUST exist if and only if vt is 0x3.
bes (2 bytes): A Bes structure that specifies the new cell contents. This field MUST exist if and only if vt is 0x4.
xpe (variable): A CellParsedFormula structure that specifies the new cell contents. This field MUST exist if and only if vt is 0x5.