Data processing method, apparatus, device, medium, and product

By using a virtual location array to store the virtual location of the target data in an online Excel editor, the problem of cell position changes caused by row or column changes is solved, enabling accurate calculations without redefining functions and improving work efficiency.

CN115421624BActive Publication Date: 2026-06-05CHINA CONSTRUCTION BANK +1

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHINA CONSTRUCTION BANK
Filing Date
2022-09-26
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

Existing online Excel editors often encounter errors in data retrieval due to changes in cell positions of custom functions after users add or delete rows or columns in a worksheet. This necessitates users redefining the functions, leading to inaccurate calculation results and reduced work efficiency.

Method used

By responding to user function calls in the online Excel editor, the target virtual location is determined, and a virtual location array is used to store the virtual location of the target data. The target cell location is obtained based on the target subscript position, and the function value of the target function is calculated, ensuring that the function does not need to be redefined when the row or column changes.

Benefits of technology

When the rows or columns of a worksheet change, accurately obtain the target data corresponding to the independent variables of the objective function, reduce the user's workload, improve work efficiency, and ensure the accuracy of the calculation results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115421624B_ABST
    Figure CN115421624B_ABST
Patent Text Reader

Abstract

The application discloses a data processing method, device, equipment, medium and product. The method comprises the following steps: in response to a first input of a user calling a target function in an online excel editor, determining a target virtual position of target data in a worksheet; according to the target virtual position, determining a target index position corresponding to the target virtual position in a virtual position array; according to the target index position, determining a target cell position corresponding to the target index position; obtaining target data located at the target cell position from the worksheet; and calculating a function value of the target function based on the target data. By using the data processing method, device, equipment, medium and product provided by the application, in the case that a row or a column in the worksheet is changed, the user does not need to redefine the function according to the changed cell position, and the target data corresponding to the independent variable of the target function can be accurately obtained, thereby reducing the workload of the user and improving the work efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of computer technology, and in particular relates to a data processing method, apparatus, device, medium and product. Background Technology

[0002] With the development of electronic information technology, spreadsheets are being used more and more widely. In order to meet the needs of multiple people editing at the same time, online Excel editors have emerged.

[0003] However, in existing online Excel editors, if a user adds or deletes rows or columns in a worksheet, the predefined custom function may fail to retrieve the correct data due to the change in cell position, resulting in incorrect calculation results. Therefore, users need to redefine the function based on the changed cell position, which not only inconveniences users but also reduces work efficiency. Summary of the Invention

[0004] This application provides a data processing method, apparatus, device, medium, and product that can accurately obtain the target data corresponding to the independent variable of the target function without requiring the user to redefine the function based on the changed cell position when rows or columns in a worksheet change, thereby reducing the user's workload and improving work efficiency.

[0005] In a first aspect, embodiments of this application provide a data processing method, the method comprising:

[0006] In response to the user's first input calling the target function in the online Excel editor, the target virtual position of the target data in the worksheet is determined. The target data is the data corresponding to the independent variable of the target function. The target virtual position is stored in the virtual position array. The target function is a user-defined function. The worksheet is a worksheet in the online Excel editor.

[0007] Based on the target virtual location, determine the target index position in the virtual location array corresponding to the target virtual location;

[0008] Determine the target cell position corresponding to the target index position;

[0009] Retrieve the target data located at the target cell position from the worksheet;

[0010] Calculate the function value of the objective function based on the target data.

[0011] Secondly, embodiments of this application provide a data processing apparatus, the apparatus comprising:

[0012] The first determining module is used to determine the target virtual position of the target data in the worksheet in response to the user's first input of calling the target function in the online Excel editor. The target data is the data corresponding to the independent variable of the target function. The target virtual position is stored in the virtual position array. The target function is a user-defined function. The worksheet is the worksheet in the online Excel editor.

[0013] The second determining module is used to determine the target index position in the virtual position array corresponding to the target virtual position based on the target virtual position;

[0014] The third determination module is used to determine the target cell position corresponding to the target index position based on the target index position;

[0015] The acquisition module is used to acquire target data located at the target cell position from the worksheet;

[0016] The calculation module is used to calculate the function value of the objective function based on the target data.

[0017] Thirdly, embodiments of this application provide an electronic device, the device including: a processor and a memory storing computer program instructions;

[0018] When the processor executes computer program instructions, it implements the data processing method as shown in any embodiment of the first aspect.

[0019] Fourthly, embodiments of this application provide a computer storage medium storing computer program instructions, which, when executed by a processor, implement the data processing method shown in any embodiment of the first aspect.

[0020] Fifthly, embodiments of this application provide a computer program product in which instructions, when executed by a processor of an electronic device, cause the electronic device to perform the data processing method shown in any embodiment of the first aspect.

[0021] The data processing method, apparatus, device, medium, and product of this application embodiment can, in response to a user's first input of calling a custom objective function in an online Excel editor, determine the target virtual location of the target data in the worksheet, then determine the target subscript position corresponding to the target virtual location in the virtual location array, and then determine the target cell position corresponding to the target subscript position. This allows the target data located at the target cell position to be obtained, and the function value of the objective function can be calculated based on the target data. Since the target virtual location of the target data can be determined according to the objective function, and the target virtual location is stored in the virtual location array, the target virtual location does not change when the rows or columns in the worksheet change. Therefore, the target cell position where the target data is located can be determined according to the target subscript position corresponding to the target virtual location, thereby accurately obtaining the target data in the worksheet and obtaining the correct calculation result. Thus, even when the rows or columns in the worksheet change, the user does not need to redefine the function based on the changed cell position to accurately obtain the target data corresponding to the independent variable of the objective function, reducing the user's workload and improving work efficiency. Attached Figure Description

[0022] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0023] Figure 1 This is a flowchart of a data processing method provided in one embodiment of this application;

[0024] Figure 2 This is a schematic diagram illustrating an application scenario of a data processing method provided in one embodiment of this application;

[0025] Figure 3 This is a schematic diagram illustrating an application scenario of another data processing method provided in one embodiment of this application;

[0026] Figure 4 This is a schematic diagram illustrating an application scenario of another data processing method provided in one embodiment of this application;

[0027] Figure 5 This is a schematic diagram of the structure of a data processing device provided in one embodiment of this application;

[0028] Figure 6 This is a schematic diagram of the structure of an electronic device provided in one embodiment of this application. Detailed Implementation

[0029] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.

[0030] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes said element.

[0031] Furthermore, it should be noted that the acquisition, storage, use, and processing of data in this application's technical solution all comply with the relevant provisions of national laws and regulations.

[0032] Corporate income tax filing is a tax levied on the production and operating income or other income obtained by enterprises and other organizations in my country. Regardless of whether an enterprise makes a profit or loss during the tax year, it must submit a pre-payment corporate income tax return, an annual corporate income tax return, financial accounting reports, and other relevant materials required by the tax authorities to the tax authorities within the prescribed time limit.

[0033] For banks, the larger the bank, the more institutions are involved in corporate income tax declaration, and the more forms need to be filled out. This involves numerous accounting subjects and complex formulas, which are prone to errors when filled out manually. Furthermore, the approval process mainly relies on offline communication, resulting in low automation.

[0034] Therefore, a large amount of offline filing work can be transferred to the internet through the online corporate income tax filing system. After the head office tax management personnel develop the filing templates, they will release them, and staff at the first and second-tier branches will generate the corresponding forms and fill them out according to the templates.

[0035] Because it involves retrieving a large amount of basic data of different types and referencing cells across different forms, the template development process also needs to support custom functions to retrieve and calculate basic data such as accounting subject data and profit and loss statements, thereby making the data entry process more intelligent.

[0036] Branch staff at all levels can edit application forms and perform operations such as inserting and / or deleting rows and / or columns. However, in scenarios where the template contains user-defined functions, the existing method cannot accurately locate the position of the changed cells after inserting and / or deleting rows and / or columns, thus failing to calculate the accurate result of the user-defined function. For example, for the user-defined function CAL_ITEM(A1+F5), which needs to retrieve data located in cells A1 and F5, if there are row and column changes in the A1:F5 range, the data originally located in cells A1 and F5 may have moved to other cell positions. Retrieving data still located in cells A1 and F5 will result in an incorrect calculation.

[0037] Based on this, embodiments of this application provide a data processing method, apparatus, device, medium, and product that, in response to a user's first input of calling a custom objective function in an online Excel editor, determines the target virtual location of target data in a worksheet, then determines the target subscript position corresponding to this virtual location in a virtual location array, and finally determines the target cell position corresponding to the target subscript position. This allows the target data located at the target cell position to be obtained, and the function value of the objective function can be calculated based on the target data. Since the target virtual location of the target data can be determined according to the objective function, and the target virtual location is stored in a virtual location array, it does not change when rows or columns in the worksheet change. Therefore, the target cell position of the target data can be determined based on the target subscript position corresponding to the target virtual location, thereby accurately obtaining the target data in the worksheet and obtaining the correct calculation result. Thus, even when rows or columns in the worksheet change, the user does not need to redefine the function based on the changed cell position to accurately obtain the target data corresponding to the independent variable of the objective function, reducing the user's workload and improving work efficiency.

[0038] Figure 1 The diagram illustrates a data processing method according to an embodiment of this application. It should be noted that this data processing method can be applied to data processing devices, such as… Figure 1 As shown, the data processing method may include the following steps:

[0039] S110, responding to the user's first input calling the target function in the online Excel editor.

[0040] Determine the target virtual location of the target data in the worksheet;

[0041] S120, Based on the target virtual position, determine the target index position in the virtual position array corresponding to the target virtual position;

[0042] S130, Determine the target cell position corresponding to the target index position based on the target index position;

[0043] S140, Obtain the target data located at the target cell position from the worksheet;

[0044] S150, Calculate the function value of the objective function based on the target data.

[0045] Therefore, in response to the user's first input when calling a custom objective function in the online Excel editor, the target virtual location of the target data in the worksheet can be determined. Then, the target index position corresponding to this virtual location in the virtual location array can be determined, followed by the target cell position corresponding to the target index position. This allows the target data located at the target cell position to be obtained, and the function value of the objective function can be calculated based on this target data. Since the target virtual location of the target data can be determined based on the objective function, and this virtual location is stored in a virtual location array, it remains unchanged even when rows or columns in the worksheet change. Therefore, the target cell position of the target data can be determined based on the target index position corresponding to this virtual location, thus accurately obtaining the target data in the worksheet and obtaining the correct calculation result. In this way, even when rows or columns in the worksheet change, the user does not need to redefine the function based on the changed cell positions to accurately obtain the target data corresponding to the independent variable of the objective function, reducing the user's workload and improving work efficiency.

[0046] Regarding S110, the target data can be the data corresponding to the independent variable of the objective function. The objective function can be a user-defined function. The target virtual location can be stored in a virtual location array. The worksheet is a worksheet in an online Excel editor, and a virtual location array can be pre-created for each worksheet, so that each cell in each worksheet can have a corresponding virtual location. Regardless of how the rows and columns in the worksheet change, the cell position may change, but the virtual location of the cell remains unchanged.

[0047] In some implementations, in order to more accurately determine the target virtual location of the target data, the target virtual location may include target virtual row coordinates and target virtual column coordinates. The target virtual row coordinates may be stored in a virtual row coordinate array, and the target virtual column coordinates may be stored in a virtual column coordinate array.

[0048] In some examples, such as Figure 2 As shown, the objective function can be a user-defined function: CAL_ITEM(A1+F5). Initially, the virtual row coordinate array corresponding to the A1:F5 range in the worksheet can be [1r,2r,3r,4r,5r], and the virtual column coordinate array can be [1c,2c,3c,4c,5c,6c]. The target data can be the data located in cells A1 and F5. The virtual coordinates of the cell located in cell A1 are (1r, 1c), and the virtual coordinates of the cell located in cell F5 are (5r, 6c). After defining the objective function, the target virtual coordinates of the target data corresponding to the objective function can be recorded, namely (1r, 1c) and (5r, 6c). When the objective function is called, the data processing device can determine the target virtual positions of the target data corresponding to the independent variable of the objective function as (1r, 1c) and (5r, 6c).

[0049] In this way, the target virtual position of the target data can be determined more accurately by using the target virtual row coordinates stored in the virtual row coordinate array and the target virtual column coordinates stored in the virtual column coordinate array.

[0050] Regarding S120, each element in the array has a corresponding index position. Therefore, the target index position corresponding to the target virtual position in the virtual position array can be determined. Specifically, the target index positions corresponding to the target virtual row coordinates and the target virtual column coordinates can be determined separately.

[0051] In some examples, the indices of the elements in the virtual row coordinate array [1r, 2r, 3r, 4r, 5r] are 0, 1, 2, 3, 4, respectively, and the indices of the elements in the virtual column coordinate array [1c, 2c, 3c, 4c, 5c, 6c] are 0, 1, 2, 3, 4, 5, respectively. Therefore, it can be determined that the index of (1r, 1c) is (0, 0), and the index of (5r, 6c) is (4, 5).

[0052] Regarding S130, the target cell position corresponding to the target index position can be determined based on the target index position. The cell position can include the cell column coordinates and the cell row coordinates.

[0053] In some examples, cell column coordinates A, B, C… correspond to the index positions 0, 1, 2… of elements in the virtual column coordinate array, and cell row coordinates 1, 2, 3… correspond to the index positions 0, 1, 2… of elements in the virtual row coordinate array. Therefore, we can determine that the cell position corresponding to the index (0, 0) is A1, and the cell position corresponding to the index (4, 5) is F5.

[0054] Involving cells S140 to S150, once the target cell location is determined, the target data can be obtained from that target cell location. Then, the target data is substituted into the target function to calculate the function value of the target function.

[0055] In some implementations, in order to accurately retrieve data from before the addition of rows in a worksheet, the method may further include:

[0056] In response to the user's second input of adding a third row between the first and second rows of the worksheet, the virtual row coordinates of the third row are added between the virtual row coordinates of the first and second rows in the virtual row coordinate array to obtain the first virtual row coordinate array;

[0057] Determine the first index position corresponding to each virtual row coordinate in the first virtual row coordinate array;

[0058] Update the correspondence between the index position and the cell position based on the first index position.

[0059] Here, the subscript position can include the first subscript position.

[0060] In some examples, such as Figure 3 As shown, if a row is added between rows 1 and 2, an element 6r is added between 1r and 2r in the virtual row coordinate array. The virtual column coordinate array remains unchanged. The target virtual position of the original target data located at cell F5 remains (5r, 6c), but the corresponding subscript position will become (5, 5), and the cell position corresponding to the subscript position (5, 5) will become F6. Since adding a row between rows 1 and 2 in the worksheet moves the original target data located at cell F5 to F6, the virtual position allows for accurate location of the original target data after adding the row.

[0061] Thus, through the above process, you can accurately retrieve the data from before the addition of rows in a worksheet.

[0062] In some implementations, to accurately retrieve data from before the addition of a column in a worksheet, the method may further include:

[0063] In response to the user adding a third column of input between the first and second columns in the worksheet, the virtual column coordinates of the third column are added between the virtual column coordinates of the first and second columns in the virtual column coordinate array to obtain the second virtual column coordinate array;

[0064] Determine the position of the second index corresponding to the coordinates of each virtual column in the second virtual column coordinate array;

[0065] Update the correspondence between the index position and the cell position based on the second index position.

[0066] Here, the subscript position can include the second subscript position.

[0067] In some examples, if a column is added between columns A and B, an element 7c can be added between 1c and 2c in the virtual column coordinate array. The virtual row coordinate array remains unchanged, and the target virtual position of the original target data located at cell F5 remains (5r, 6c), but the corresponding subscript position will become (4, 6), and the cell position corresponding to the subscript position (4, 6) will now be G5. Because a column is added between columns A and B in the worksheet, the original target data located at cell F5 has moved to G5. Therefore, the virtual position allows for accurate location of the original target data after adding the column.

[0068] Thus, through the above process, you can accurately retrieve the data from before the columns were added after adding them to the worksheet.

[0069] In some implementations, in order to accurately retrieve the data prior to the deletion of rows after deleting rows in the worksheet, the method may further include:

[0070] In response to the user deleting the fourth input in the fourth row of the worksheet, delete the virtual row coordinates corresponding to the fourth row in the virtual row coordinate array to obtain the third virtual row coordinate array;

[0071] Determine the third index position corresponding to each virtual row coordinate in the third virtual row coordinate array;

[0072] Update the correspondence between the index position and the cell position based on the third subscript position.

[0073] Here, the subscript position can include the third subscript position.

[0074] In some examples, such as Figure 4 As shown, deleting 3 rows in the worksheet deletes row 3r from the virtual row coordinate array. The virtual column coordinate array remains unchanged. The virtual location of the target data, originally at cell F5, remains (5r, 6c), but the corresponding index becomes (3, 5). The cell position corresponding to index (3, 5) then becomes F4. Because deleting 3 rows moves the target data from cell F5 to F4, the virtual location allows for accurate positioning of the original target data after row deletion.

[0075] Thus, through the above process, the data before the deletion of rows can be accurately obtained after deleting rows in the worksheet.

[0076] In some implementations, in order to accurately retrieve the data before the deletion of a column in a worksheet, the method may further include:

[0077] In response to the user's deletion of the fifth input in the fourth column of the worksheet, the virtual column coordinates corresponding to the fourth column are deleted from the virtual column coordinate array, resulting in the fourth virtual column coordinate array;

[0078] Determine the fourth index position corresponding to the coordinates of each virtual column in the fourth virtual column coordinate array;

[0079] Update the correspondence between the index position and the cell position based on the fourth subscript position.

[0080] Here, the subscript position can include the fourth subscript position.

[0081] In some examples, deleting column B in a worksheet deletes cell 2c from the virtual column coordinate array. The virtual row coordinate array remains unchanged. The virtual target location of the data originally at cell F5 remains (5r, 6c), but the corresponding index becomes (4, 4), and the cell position corresponding to index (4, 4) becomes E5. Because deleting column B moves the target data from cell F5 to E5, the virtual location allows for accurate positioning of the original target data after deleting a column.

[0082] In this way, by following the above process, you can accurately retrieve the data before the deletion of a column in a worksheet.

[0083] The data processing method provided in this application can quickly and easily locate the changed cell position when row and column changes occur, without the user noticing. In online Excel editors, when using custom functions and there are cell references across workbooks and worksheets, the custom function can still calculate the correct result even after row and column changes cause the referenced cell position to change.

[0084] Based on the same inventive concept, embodiments of this application also provide a data processing apparatus. The following, in conjunction with… Figure 5 The data processing apparatus provided in the embodiments of this application will be described in detail.

[0085] Figure 5 A schematic diagram of the structure of a data processing apparatus provided in one embodiment of this application is shown.

[0086] like Figure 5 As shown, the data processing apparatus may include:

[0087] The first determining module 501 is used to respond to the first input of the user calling the target function in the online Excel editor, determine the target virtual position of the target data in the worksheet, the target data is the data corresponding to the independent variable of the target function, the target virtual position is stored in the virtual position array, the target function is a user-defined function, and the worksheet is the worksheet in the online Excel editor;

[0088] The second determining module 502 is used to determine the target index position in the virtual position array corresponding to the target virtual position based on the target virtual position;

[0089] The third determining module 503 is used to determine the target cell position corresponding to the target index position based on the target index position;

[0090] Module 504 is used to retrieve target data located at the target cell position from the worksheet;

[0091] The calculation module 505 is used to calculate the function value of the objective function based on the objective data.

[0092] Therefore, in response to the user's first input when calling a custom objective function in the online Excel editor, the target virtual location of the target data in the worksheet can be determined. Then, the target index position corresponding to this virtual location in the virtual location array can be determined, followed by the target cell position corresponding to the target index position. This allows the target data located at the target cell position to be obtained, and the function value of the objective function can be calculated based on this target data. Since the target virtual location of the target data can be determined based on the objective function, and this virtual location is stored in a virtual location array, it remains unchanged even when rows or columns in the worksheet change. Therefore, the target cell position of the target data can be determined based on the target index position corresponding to this virtual location, thus accurately obtaining the target data in the worksheet and obtaining the correct calculation result. In this way, even when rows or columns in the worksheet change, the user does not need to redefine the function based on the changed cell positions to accurately obtain the target data corresponding to the independent variable of the objective function, reducing the user's workload and improving work efficiency.

[0093] In some implementations, the target virtual location includes target virtual row coordinates and target virtual column coordinates, with the target virtual row coordinates stored in a virtual row coordinate array and the target virtual column coordinates stored in a virtual column coordinate array.

[0094] In some embodiments, the device may further include:

[0095] The first addition module is used to respond to the user's second input to add a third row between the first and second rows of the worksheet, and to add the virtual row coordinates of the third row between the virtual row coordinates of the first and second rows in the virtual row coordinate array to obtain the first virtual row coordinate array.

[0096] The fourth determining module is used to determine the first index position corresponding to each virtual row coordinate in the first virtual row coordinate array;

[0097] The first update module is used to update the correspondence between the index position and the cell position based on the first index position, where the index position includes the first index position.

[0098] In some embodiments, the device may further include:

[0099] The second add module is used to respond to the user's third input to add a third column between the first and second columns in the worksheet. It adds the virtual column coordinates of the third column between the virtual column coordinates of the first and second columns in the virtual column coordinate array to obtain the second virtual column coordinate array.

[0100] The fifth determining module is used to determine the second subscript position corresponding to each virtual column coordinate in the second virtual column coordinate array;

[0101] The second update module is used to update the correspondence between the index position and the cell position based on the second index position, where the index position includes the second index position.

[0102] In some embodiments, the device may further include:

[0103] The first deletion module is used to respond to the user's fourth input to delete the fourth row in the worksheet, delete the virtual row coordinates corresponding to the fourth row in the virtual row coordinate array, and obtain the third virtual row coordinate array;

[0104] The sixth determining module is used to determine the third subscript position corresponding to each virtual row coordinate in the third virtual row coordinate array;

[0105] The third update module is used to update the correspondence between the index position and the cell position based on the third index position, where the index position includes the third index position.

[0106] In some embodiments, the device may further include:

[0107] The second deletion module is used to respond to the user's fifth input to delete the fourth column in the worksheet, delete the virtual column coordinates corresponding to the fourth column in the virtual column coordinate array, and obtain the fourth virtual column coordinate array;

[0108] The seventh determination module is used to determine the fourth subscript position corresponding to each virtual column coordinate in the fourth virtual column coordinate array;

[0109] The fourth update module is used to update the correspondence between the index position and the cell position based on the fourth index position, where the index position includes the fourth index position.

[0110] Figure 6 A schematic diagram of the structure of an electronic device provided in one embodiment of this application is shown.

[0111] like Figure 6 As shown, the electronic device 6 is capable of implementing an exemplary hardware architecture of the electronic device according to the data processing method and data processing apparatus in the embodiments of this application. This electronic device may refer to the electronic device in the embodiments of this application.

[0112] The electronic device 6 may include a processor 601 and a memory 602 storing computer program instructions.

[0113] Specifically, the processor 601 may include a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.

[0114] Memory 602 may include mass storage for data or instructions. For example, and not limitingly, memory 602 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. Where appropriate, memory 602 may include removable or non-removable (or fixed) media. Where appropriate, memory 602 may be internal or external to an integrated gateway disaster recovery device. In a particular embodiment, memory 602 is non-volatile solid-state memory. In a particular embodiment, memory 602 may include read-only memory (ROM), random access memory (RAM), disk storage media device, optical storage media device, flash memory device, electrical, optical, or other physical / tangible memory storage device. Thus, generally, memory 602 includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the method according to one aspect of this application.

[0115] The processor 601 implements any of the data processing methods described in the above embodiments by reading and executing computer program instructions stored in the memory 602.

[0116] In one example, the electronic device may also include a communication interface 603 and a bus 604. Wherein, as... Figure 6 As shown, the processor 601, memory 602, and communication interface 603 are connected through bus 604 and complete communication with each other.

[0117] The communication interface 603 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.

[0118] Bus 604 includes hardware, software, or both, that couples components of an electronic device together. For example, and not limitingly, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), HyperTransport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Microchannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local (VLB) bus, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 504 may include one or more buses. Although specific buses are described and illustrated in embodiments of this application, this application contemplates any suitable bus or interconnect.

[0119] The electronic device can execute the data processing method described in the embodiments of this application, thereby achieving the combination Figures 1 to 5 The data processing methods and apparatus described.

[0120] Furthermore, in conjunction with the data processing methods in the above embodiments, this application embodiment can provide a computer storage medium for implementation. The computer storage medium stores computer program instructions; when these computer program instructions are executed by a processor, they implement any of the data processing methods in the above embodiments.

[0121] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.

[0122] The functional blocks shown in the above-described structural diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.

[0123] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.

[0124] The aspects of this application have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by dedicated hardware performing the specified functions or actions, or can be implemented by a combination of dedicated hardware and computer instructions.

[0125] The above description is merely a specific implementation of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.

Claims

1. A data processing method, characterized in that, The method includes: In response to the user's first input calling the target function in the online Excel editor, the target virtual position of the target data in the worksheet is determined. The target data is the data corresponding to the independent variable of the target function. The target virtual position is stored in a virtual position array. The target function is a user-defined function. The worksheet is the worksheet in the online Excel editor. The target virtual position includes target virtual row coordinates and target virtual column coordinates. The target virtual row coordinates are stored in a virtual row coordinate array, and the target virtual column coordinates are stored in a virtual column coordinate array. Based on the target virtual location, determine the target index position corresponding to the target virtual location in the virtual location array; Based on the target index position, determine the target cell position corresponding to the target index position; Retrieve the target data located at the target cell position from the worksheet; Based on the target data, calculate the function value of the target function.

2. The method according to claim 1, characterized in that, The method further includes: In response to the user's second input to add a third row between the first and second rows of the worksheet, the virtual row coordinates corresponding to the third row are added between the virtual row coordinates corresponding to the first and second rows in the virtual row coordinate array to obtain a first virtual row coordinate array; Determine the first index position corresponding to each virtual row coordinate in the first virtual row coordinate array; Based on the first index position, update the correspondence between the index position and the cell position, wherein the index position includes the first index position.

3. The method according to claim 1, characterized in that, The method further includes: In response to the user's third input of adding a third column between the first and second columns in the worksheet, the virtual column coordinates corresponding to the third column are added between the virtual column coordinates corresponding to the first and second columns in the virtual column coordinate array to obtain a second virtual column coordinate array; Determine the second index position corresponding to each virtual column coordinate in the second virtual column coordinate array; Update the correspondence between the index position and the cell position based on the second index position, where the index position includes the second index position.

4. The method according to claim 1, characterized in that, The method further includes: In response to the user deleting the fourth input in the fourth row of the worksheet, the virtual row coordinates corresponding to the fourth row are deleted from the virtual row coordinate array to obtain a third virtual row coordinate array; Determine the third index position corresponding to each virtual row coordinate in the third virtual row coordinate array; Update the correspondence between the index position and the cell position based on the third index position, where the index position includes the third index position.

5. The method according to claim 1, characterized in that, The method further includes: In response to the user's fifth input to delete the fourth column in the worksheet, the virtual column coordinates corresponding to the fourth column are deleted from the virtual column coordinate array to obtain the fourth virtual column coordinate array; Determine the fourth index position corresponding to each virtual column coordinate in the fourth virtual column coordinate array; Update the correspondence between the index position and the cell position based on the fourth index position, where the index position includes the fourth index position.

6. A data processing apparatus, characterized in that, The device includes: The first determining module is used to determine the target virtual position of the target data in the worksheet in response to the user's first input of calling the target function in the online Excel editor. The target data is the data corresponding to the independent variable of the target function. The target virtual position is stored in a virtual position array. The target function is a user-defined function. The worksheet is a worksheet in the online Excel editor. The target virtual position includes target virtual row coordinates and target virtual column coordinates. The target virtual row coordinates are stored in a virtual row coordinate array, and the target virtual column coordinates are stored in a virtual column coordinate array. The second determining module is used to determine the target index position in the virtual position array corresponding to the target virtual position based on the target virtual position; The third determining module is used to determine the target cell position corresponding to the target index position based on the target index position; The acquisition module is used to acquire target data located at the target cell position from the worksheet; The calculation module is used to calculate the function value of the target function based on the target data.

7. An electronic device, characterized in that, The device includes: a processor and a memory storing computer program instructions; When the processor executes the computer program instructions, it implements the data processing method as described in any one of claims 1-5.

8. A computer storage medium, characterized in that, The computer storage medium stores computer program instructions, which, when executed by a processor, implement the data processing method as described in any one of claims 1-5.

9. A computer program product, characterized in that, When the instructions in the computer program product are executed by the processor of the electronic device, the electronic device performs the data processing method as described in any one of claims 1-5.