mirror of
https://github.com/abap2xlsx/abap2xlsx.git
synced 2025-05-06 09:26:37 +08:00
parent
6097702f82
commit
a4a7fe0340
|
@ -524,8 +524,10 @@ CLASS zcl_excel_converter IMPLEMENTATION.
|
||||||
METHOD create_color_style.
|
METHOD create_color_style.
|
||||||
DATA: ls_styles TYPE ts_styles.
|
DATA: ls_styles TYPE ts_styles.
|
||||||
DATA: lo_style TYPE REF TO zcl_excel_style.
|
DATA: lo_style TYPE REF TO zcl_excel_style.
|
||||||
|
* Begin of ATC fix-issue-1014-part1
|
||||||
READ TABLE wt_styles INTO ls_styles WITH KEY guid = i_style.
|
* READ TABLE wt_styles INTO ls_styles WITH KEY guid = i_style.
|
||||||
|
READ TABLE wt_styles INTO ls_styles WITH KEY guid COMPONENTS guid = i_style.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
IF sy-subrc = 0.
|
IF sy-subrc = 0.
|
||||||
lo_style = wo_excel->add_new_style( ).
|
lo_style = wo_excel->add_new_style( ).
|
||||||
lo_style->font->bold = ls_styles-style->font->bold.
|
lo_style->font->bold = ls_styles-style->font->bold.
|
||||||
|
@ -1370,9 +1372,14 @@ CLASS zcl_excel_converter IMPLEMENTATION.
|
||||||
IF l_line <= 1.
|
IF l_line <= 1.
|
||||||
CLEAR l_hidden.
|
CLEAR l_hidden.
|
||||||
ELSE.
|
ELSE.
|
||||||
LOOP AT wt_sort_values INTO ls_sort_values WHERE is_collapsed = abap_false.
|
* Begin of ATC fix-issue-1014-part1
|
||||||
IF l_hidden < ls_sort_values-sort_level.
|
* LOOP AT wt_sort_values INTO ls_sort_values WHERE is_collapsed = abap_false.
|
||||||
l_hidden = ls_sort_values-sort_level.
|
LOOP AT wt_sort_values INTO ls_sort_values USING KEY sort_level. "WHERE is_collapsed = abap_false.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
|
IF ls_sort_values-is_collapsed = abap_false. "ATC fix-issue-1014-part1
|
||||||
|
IF l_hidden < ls_sort_values-sort_level.
|
||||||
|
l_hidden = ls_sort_values-sort_level.
|
||||||
|
ENDIF.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
@ -1418,8 +1425,13 @@ CLASS zcl_excel_converter IMPLEMENTATION.
|
||||||
<fs_sortval> = <fs_fldval>.
|
<fs_sortval> = <fs_fldval>.
|
||||||
<fs_sortv>-new = abap_false.
|
<fs_sortv>-new = abap_false.
|
||||||
l_line = <fs_sortv>-sort_level.
|
l_line = <fs_sortv>-sort_level.
|
||||||
LOOP AT wt_sort_values ASSIGNING <fs_sortv> WHERE sort_level >= l_line.
|
* Begin of ATC fix-issue-1014-part1
|
||||||
<fs_sortv>-row_int = l_row_int.
|
* LOOP AT wt_sort_values ASSIGNING <fs_sortv> WHERE sort_level >= l_line.
|
||||||
|
LOOP AT wt_sort_values ASSIGNING <fs_sortv> USING KEY sort_level .
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
|
IF <fs_sortv>-sort_level >= l_line. "ATC fix-issue-1014-part1
|
||||||
|
<fs_sortv>-row_int = l_row_int.
|
||||||
|
ENDIF. "ATC fix-issue-1014-part1
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
|
@ -4,46 +4,56 @@
|
||||||
|
|
||||||
TYPES ty_style_type TYPE c LENGTH 1.
|
TYPES ty_style_type TYPE c LENGTH 1.
|
||||||
|
|
||||||
TYPES: BEGIN OF ts_alv_types,
|
TYPES: BEGIN OF ts_alv_types,
|
||||||
seoclass TYPE seoclsname,
|
seoclass TYPE seoclsname,
|
||||||
clsname TYPE seoclsname,
|
clsname TYPE seoclsname,
|
||||||
END OF ts_alv_types,
|
END OF ts_alv_types,
|
||||||
tt_alv_types TYPE HASHED TABLE OF ts_alv_types WITH UNIQUE KEY seoclass.
|
tt_alv_types TYPE HASHED TABLE OF ts_alv_types WITH UNIQUE KEY seoclass.
|
||||||
|
|
||||||
TYPES: BEGIN OF ts_sort_values,
|
TYPES: BEGIN OF ts_sort_values,
|
||||||
fieldname TYPE fieldname,
|
fieldname TYPE fieldname,
|
||||||
row_int TYPE zexcel_cell_row,
|
row_int TYPE zexcel_cell_row,
|
||||||
value TYPE REF TO data,
|
value TYPE REF TO data,
|
||||||
new TYPE flag,
|
new TYPE flag,
|
||||||
sort_level TYPE int4,
|
sort_level TYPE int4,
|
||||||
is_collapsed TYPE flag,
|
is_collapsed TYPE flag,
|
||||||
END OF ts_sort_values,
|
END OF ts_sort_values,
|
||||||
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* tt_sort_values TYPE HASHED TABLE OF ts_sort_values WITH UNIQUE KEY fieldname .
|
||||||
|
tt_sort_values TYPE HASHED TABLE OF ts_sort_values
|
||||||
|
WITH UNIQUE KEY primary_key COMPONENTS fieldname
|
||||||
|
WITH NON-UNIQUE SORTED KEY sort_level COMPONENTS sort_level is_collapsed .
|
||||||
|
|
||||||
tt_sort_values TYPE HASHED TABLE OF ts_sort_values WITH UNIQUE KEY fieldname.
|
* End of ATC fix-issue-1014-part1
|
||||||
TYPES: BEGIN OF ts_subtotal_rows,
|
TYPES: BEGIN OF ts_subtotal_rows,
|
||||||
row_int TYPE zexcel_cell_row,
|
row_int TYPE zexcel_cell_row,
|
||||||
row_int_start TYPE zexcel_cell_row,
|
row_int_start TYPE zexcel_cell_row,
|
||||||
columnname TYPE fieldname,
|
columnname TYPE fieldname,
|
||||||
END OF ts_subtotal_rows,
|
END OF ts_subtotal_rows,
|
||||||
|
|
||||||
tt_subtotal_rows TYPE HASHED TABLE OF ts_subtotal_rows WITH UNIQUE KEY row_int.
|
tt_subtotal_rows TYPE HASHED TABLE OF ts_subtotal_rows WITH UNIQUE KEY row_int.
|
||||||
|
|
||||||
TYPES: BEGIN OF ts_styles,
|
TYPES: BEGIN OF ts_styles,
|
||||||
type TYPE ty_style_type,
|
type TYPE ty_style_type,
|
||||||
alignment TYPE zexcel_alignment,
|
alignment TYPE zexcel_alignment,
|
||||||
inttype TYPE abap_typekind,
|
inttype TYPE abap_typekind,
|
||||||
decimals TYPE int1,
|
decimals TYPE int1,
|
||||||
style TYPE REF TO zcl_excel_style,
|
style TYPE REF TO zcl_excel_style,
|
||||||
guid TYPE zexcel_cell_style,
|
guid TYPE zexcel_cell_style,
|
||||||
END OF ts_styles,
|
END OF ts_styles,
|
||||||
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* tt_styles TYPE HASHED TABLE OF ts_styles WITH UNIQUE KEY type alignment inttype decimals.
|
||||||
|
tt_styles TYPE HASHED TABLE OF ts_styles with UNIQUE KEY primary_key
|
||||||
|
COMPONENTS type alignment inttype decimals
|
||||||
|
WITH NON-UNIQUE SORTED KEY guid COMPONENTS guid .
|
||||||
|
.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
|
|
||||||
tt_styles TYPE HASHED TABLE OF ts_styles WITH UNIQUE KEY type alignment inttype decimals.
|
TYPES: BEGIN OF ts_color_styles,
|
||||||
|
guid_old TYPE zexcel_cell_style,
|
||||||
|
fontcolor TYPE zexcel_style_color_argb,
|
||||||
|
fillcolor TYPE zexcel_style_color_argb,
|
||||||
|
style_new TYPE REF TO zcl_excel_style,
|
||||||
|
END OF ts_color_styles,
|
||||||
|
|
||||||
TYPES: BEGIN OF ts_color_styles,
|
tt_color_styles TYPE HASHED TABLE OF ts_color_styles WITH UNIQUE KEY guid_old fontcolor fillcolor.
|
||||||
guid_old TYPE zexcel_cell_style,
|
|
||||||
fontcolor TYPE zexcel_style_color_argb,
|
|
||||||
fillcolor TYPE zexcel_style_color_argb,
|
|
||||||
style_new TYPE REF TO zcl_excel_style,
|
|
||||||
END OF ts_color_styles,
|
|
||||||
|
|
||||||
tt_color_styles TYPE HASHED TABLE OF ts_color_styles WITH UNIQUE KEY guid_old fontcolor fillcolor.
|
|
||||||
|
|
|
@ -192,7 +192,7 @@ CLASS zcl_excel_autofilter IMPLEMENTATION.
|
||||||
|
|
||||||
DATA: ls_filter LIKE LINE OF rt_filter.
|
DATA: ls_filter LIKE LINE OF rt_filter.
|
||||||
|
|
||||||
LOOP AT me->mt_filters ASSIGNING <ls_filter> WHERE rule = mc_filter_rule_single_values.
|
LOOP AT me->mt_filters ASSIGNING <ls_filter> WHERE rule = mc_filter_rule_single_values. "#EC CI_HASHSEQ
|
||||||
|
|
||||||
ls_filter-column = <ls_filter>-column.
|
ls_filter-column = <ls_filter>-column.
|
||||||
LOOP AT <ls_filter>-t_values ASSIGNING <ls_value>.
|
LOOP AT <ls_filter>-t_values ASSIGNING <ls_value>.
|
||||||
|
|
|
@ -98,7 +98,11 @@ CLASS zcl_excel_reader_2007 DEFINITION
|
||||||
formula TYPE string,
|
formula TYPE string,
|
||||||
END OF ty_ref_formulae .
|
END OF ty_ref_formulae .
|
||||||
TYPES:
|
TYPES:
|
||||||
tyt_ref_formulae TYPE HASHED TABLE OF ty_ref_formulae WITH UNIQUE KEY sheet row column .
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* tyt_ref_formulae TYPE HASHED TABLE OF ty_ref_formulae WITH UNIQUE KEY sheet row column .
|
||||||
|
tyt_ref_formulae TYPE TABLE OF ty_ref_formulae WITH UNIQUE HASHED KEY hash_key COMPONENTS
|
||||||
|
sheet row column si ref formula.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
TYPES:
|
TYPES:
|
||||||
BEGIN OF t_shared_string,
|
BEGIN OF t_shared_string,
|
||||||
value TYPE string,
|
value TYPE string,
|
||||||
|
@ -361,8 +365,11 @@ CLASS zcl_excel_reader_2007 IMPLEMENTATION.
|
||||||
row TYPE i,
|
row TYPE i,
|
||||||
outline_level TYPE i,
|
outline_level TYPE i,
|
||||||
END OF lts_row_data,
|
END OF lts_row_data,
|
||||||
ltt_row_data TYPE SORTED TABLE OF lts_row_data WITH UNIQUE KEY row.
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* ltt_row_data TYPE SORTED TABLE OF lts_row_data WITH UNIQUE KEY row.
|
||||||
|
ltt_row_data TYPE TABLE OF lts_row_data WITH NON-UNIQUE SORTED KEY sort_key
|
||||||
|
COMPONENTS outline_level.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
DATA: lt_row_data TYPE ltt_row_data,
|
DATA: lt_row_data TYPE ltt_row_data,
|
||||||
ls_row_data LIKE LINE OF lt_row_data,
|
ls_row_data LIKE LINE OF lt_row_data,
|
||||||
lt_collapse_rows TYPE HASHED TABLE OF i WITH UNIQUE KEY table_line,
|
lt_collapse_rows TYPE HASHED TABLE OF i WITH UNIQUE KEY table_line,
|
||||||
|
|
|
@ -140,11 +140,15 @@ CLASS zcl_excel_row IMPLEMENTATION.
|
||||||
CHECK io_worksheet IS BOUND.
|
CHECK io_worksheet IS BOUND.
|
||||||
|
|
||||||
lt_row_outlines = io_worksheet->get_row_outlines( ).
|
lt_row_outlines = io_worksheet->get_row_outlines( ).
|
||||||
LOOP AT lt_row_outlines ASSIGNING <ls_row_outline> WHERE row_from <= me->row_index
|
* Begin of ATC fix-issue-1014-part1
|
||||||
AND row_to >= me->row_index.
|
* LOOP AT lt_row_outlines ASSIGNING <ls_row_outline> WHERE row_from <= me->row_index
|
||||||
|
* AND row_to >= me->row_index.
|
||||||
ADD 1 TO r_outline_level.
|
LOOP AT lt_row_outlines ASSIGNING <ls_row_outline> USING KEY collapsed .
|
||||||
|
IF <ls_row_outline>-row_from <= me->row_index
|
||||||
|
AND <ls_row_outline>-row_to >= me->row_index.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
|
ADD 1 TO r_outline_level.
|
||||||
|
ENDIF.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
@ -175,12 +179,21 @@ CLASS zcl_excel_row IMPLEMENTATION.
|
||||||
CHECK io_worksheet IS BOUND. " But we have to see the worksheet to make sure
|
CHECK io_worksheet IS BOUND. " But we have to see the worksheet to make sure
|
||||||
|
|
||||||
lt_row_outlines = io_worksheet->get_row_outlines( ).
|
lt_row_outlines = io_worksheet->get_row_outlines( ).
|
||||||
LOOP AT lt_row_outlines ASSIGNING <ls_row_outline> WHERE row_from <= me->row_index
|
|
||||||
AND row_to >= me->row_index
|
|
||||||
AND collapsed = abap_true. " row is in a collapsed outline --> not visible
|
|
||||||
CLEAR r_visible.
|
|
||||||
RETURN. " one hit is enough to ensure invisibility
|
|
||||||
|
|
||||||
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* LOOP AT lt_row_outlines ASSIGNING <ls_row_outline> WHERE row_from <= me->row_index
|
||||||
|
* AND row_to >= me->row_index
|
||||||
|
* AND collapsed = abap_true. " row is in a collapsed outline --> not visible
|
||||||
|
LOOP AT lt_row_outlines ASSIGNING <ls_row_outline> USING KEY collapsed.
|
||||||
|
|
||||||
|
IF <ls_row_outline>-row_from <= me->row_index
|
||||||
|
AND <ls_row_outline>-row_to >= me->row_index
|
||||||
|
AND <ls_row_outline>-collapsed = abap_true.
|
||||||
|
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
|
CLEAR r_visible.
|
||||||
|
RETURN. " one hit is enough to ensure invisibility
|
||||||
|
ENDIF. "ATC fix-issue-1014-part1
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
|
@ -22,7 +22,12 @@ CLASS zcl_excel_worksheet DEFINITION
|
||||||
collapsed TYPE abap_bool,
|
collapsed TYPE abap_bool,
|
||||||
END OF mty_s_outline_row .
|
END OF mty_s_outline_row .
|
||||||
TYPES:
|
TYPES:
|
||||||
mty_ts_outlines_row TYPE SORTED TABLE OF mty_s_outline_row WITH UNIQUE KEY row_from row_to .
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* mty_ts_outlines_row TYPE SORTED TABLE OF mty_s_outline_row WITH UNIQUE KEY row_from row_to .
|
||||||
|
mty_ts_outlines_row TYPE SORTED TABLE OF mty_s_outline_row WITH UNIQUE KEY primary_key
|
||||||
|
COMPONENTS row_from row_to
|
||||||
|
WITH NON-UNIQUE SORTED KEY collapsed COMPONENTS collapsed.
|
||||||
|
* End of ATC fix-issue-1014-part1 .
|
||||||
TYPES:
|
TYPES:
|
||||||
BEGIN OF mty_s_ignored_errors,
|
BEGIN OF mty_s_ignored_errors,
|
||||||
"! Cell reference (e.g. "A1") or list like "A1 A2" or range "A1:G1"
|
"! Cell reference (e.g. "A1") or list like "A1 A2" or range "A1:G1"
|
||||||
|
@ -73,10 +78,11 @@ CLASS zcl_excel_worksheet DEFINITION
|
||||||
col_from TYPE i,
|
col_from TYPE i,
|
||||||
col_to TYPE i,
|
col_to TYPE i,
|
||||||
END OF mty_merge .
|
END OF mty_merge .
|
||||||
TYPES:
|
TYPES:
|
||||||
mty_ts_merge TYPE SORTED TABLE OF mty_merge WITH UNIQUE KEY table_line .
|
* Begin of ATC fix-issue-1014-part1
|
||||||
* mty_ts_merge TYPE TABLE OF mty_merge WITH UNIQUE SORTED KEY sort_key COMPONENTS row_from row_to.
|
* mty_ts_merge TYPE SORTED TABLE OF mty_merge WITH UNIQUE KEY table_line .
|
||||||
|
mty_ts_merge TYPE TABLE OF mty_merge WITH UNIQUE SORTED KEY sort_key COMPONENTS row_from row_to.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
TYPES:
|
TYPES:
|
||||||
ty_area TYPE c LENGTH 1 .
|
ty_area TYPE c LENGTH 1 .
|
||||||
|
|
||||||
|
@ -776,15 +782,15 @@ CLASS zcl_excel_worksheet DEFINITION
|
||||||
iv_default_descr TYPE c
|
iv_default_descr TYPE c
|
||||||
it_field_catalog TYPE zexcel_t_fieldcatalog
|
it_field_catalog TYPE zexcel_t_fieldcatalog
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE zexcel_t_fieldcatalog.
|
VALUE(result) TYPE zexcel_t_fieldcatalog.
|
||||||
METHODS normalize_columnrow_parameter
|
METHODS normalize_columnrow_parameter
|
||||||
IMPORTING
|
IMPORTING
|
||||||
ip_columnrow TYPE csequence OPTIONAL
|
ip_columnrow TYPE csequence OPTIONAL
|
||||||
ip_column TYPE simple OPTIONAL
|
ip_column TYPE simple OPTIONAL
|
||||||
ip_row TYPE zexcel_cell_row OPTIONAL
|
ip_row TYPE zexcel_cell_row OPTIONAL
|
||||||
EXPORTING
|
EXPORTING
|
||||||
ep_column TYPE zexcel_cell_column
|
ep_column TYPE zexcel_cell_column
|
||||||
ep_row TYPE zexcel_cell_row
|
ep_row TYPE zexcel_cell_row
|
||||||
RAISING
|
RAISING
|
||||||
zcx_excel.
|
zcx_excel.
|
||||||
METHODS normalize_range_parameter
|
METHODS normalize_range_parameter
|
||||||
|
@ -816,7 +822,7 @@ ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS ZCL_EXCEL_WORKSHEET IMPLEMENTATION.
|
CLASS zcl_excel_worksheet IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD add_comment.
|
METHOD add_comment.
|
||||||
|
@ -2969,9 +2975,9 @@ CLASS ZCL_EXCEL_WORKSHEET IMPLEMENTATION.
|
||||||
lv_syindex TYPE c LENGTH 3,
|
lv_syindex TYPE c LENGTH 3,
|
||||||
lt_column_name_buffer TYPE SORTED TABLE OF string WITH UNIQUE KEY table_line.
|
lt_column_name_buffer TYPE SORTED TABLE OF string WITH UNIQUE KEY table_line.
|
||||||
FIELD-SYMBOLS: <ls_field_catalog> TYPE zexcel_s_fieldcatalog,
|
FIELD-SYMBOLS: <ls_field_catalog> TYPE zexcel_s_fieldcatalog,
|
||||||
<scrtxt1> TYPE any,
|
<scrtxt1> TYPE any,
|
||||||
<scrtxt2> TYPE any,
|
<scrtxt2> TYPE any,
|
||||||
<scrtxt3> TYPE any.
|
<scrtxt3> TYPE any.
|
||||||
|
|
||||||
" Due restrinction of new table object we cannot have two column with the same name
|
" Due restrinction of new table object we cannot have two column with the same name
|
||||||
" Check if a column with the same name exists, if exists add a counter
|
" Check if a column with the same name exists, if exists add a counter
|
||||||
|
|
|
@ -5924,7 +5924,12 @@ CLASS zcl_excel_writer_2007 IMPLEMENTATION.
|
||||||
|
|
||||||
lo_iterator TYPE REF TO zcl_excel_collection_iterator,
|
lo_iterator TYPE REF TO zcl_excel_collection_iterator,
|
||||||
lo_table TYPE REF TO zcl_excel_table,
|
lo_table TYPE REF TO zcl_excel_table,
|
||||||
lt_table_areas TYPE SORTED TABLE OF lty_table_area WITH NON-UNIQUE KEY left right top bottom,
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* lt_table_areas TYPE SORTED TABLE OF lty_table_area WITH NON-UNIQUE KEY left right top bottom,
|
||||||
|
lt_table_areas TYPE STANDARD TABLE OF lty_table_area WITH
|
||||||
|
NON-UNIQUE SORTED KEY sort_key
|
||||||
|
COMPONENTS left right top bottom,
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
ls_table_area LIKE LINE OF lt_table_areas,
|
ls_table_area LIKE LINE OF lt_table_areas,
|
||||||
lo_column TYPE REF TO zcl_excel_column,
|
lo_column TYPE REF TO zcl_excel_column,
|
||||||
|
|
||||||
|
@ -6264,7 +6269,7 @@ CLASS zcl_excel_writer_2007 IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
rv_ixml_sheet_data_root->append_child( new_child = lo_element_2 ). " row node
|
rv_ixml_sheet_data_root->append_child( new_child = lo_element_2 ). " row node
|
||||||
ENDIF.
|
ENDIF.
|
||||||
DELETE io_worksheet->sheet_content WHERE cell_value = lc_dummy_cell_content. " Get rid of dummyentries
|
DELETE io_worksheet->sheet_content WHERE cell_value = lc_dummy_cell_content. " Get rid of dummyentries
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,9 @@
|
||||||
<KEYDEF>K</KEYDEF>
|
<KEYDEF>K</KEYDEF>
|
||||||
<KEYKIND>U</KEYKIND>
|
<KEYKIND>U</KEYKIND>
|
||||||
<KEYFDCOUNT>0002</KEYFDCOUNT>
|
<KEYFDCOUNT>0002</KEYFDCOUNT>
|
||||||
|
<GENERIC>X</GENERIC>
|
||||||
<DDTEXT>Excel worksheet content</DDTEXT>
|
<DDTEXT>Excel worksheet content</DDTEXT>
|
||||||
|
<FURTHERSECKEY>W</FURTHERSECKEY>
|
||||||
</DD40V>
|
</DD40V>
|
||||||
<DD42V>
|
<DD42V>
|
||||||
<DD42V>
|
<DD42V>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user