0

私は2つのExcelシートを持っています-

最初のシート列:

ColA ColB ColC ColD ColE (containing M rows) ~700 rows  
A     B    C    D    E  
AA   BB   CC    DD   EE

2 番目のシート列:

Col1 Col2 Col3 Col4 (containing N rows) ~ 100 rows  
1     2    3    4
11    22   33   44 

最終結果セット:

ColA ColB ColC ColD ColE Col 1 Col2 Col3 Col4  
A    B     C    D    E   1      2    3    4  
A    B     C    D    E   11    22    33   44  
AA   BB   CC   DD   EE   1      2     3    4  
AA   BB   CC   DD   EE   11    22    33    44  

上記の 2 つのシートの相互乗算となる結果のスプレッドシートが必要です: MXN 行を csv/excel にコピーして戻します。

PHP を使用して 2 つのシートをクロス結合しています。両方のシートを csv に変換したので、最初のシートは csv1 で、2 番目のシートは csv2 です。

<?php
$csv1 = array_map('str_getcsv', file('Book1.csv'));
$csv2 = array_map('str_getcsv', file('Book2.csv'));

$ans = array();

foreach ($csv1 as $key1) {
    foreach ($csv2 as $key2) {
        $ans[] = $key1 . ' ' . $key2;
    }
}

$fp = fopen('file.csv','w');

foreach($ans as $fields) {
    fputcsv($fp, $fields);
}
?>

何らかの理由で、これは機能していません。サーバーが応答しておらず、ファイルが読み込まれていません。

4

2 に答える 2

0

いくつかの VBA コードを記述する必要があります。開発をほとんど行わずに、より簡単にという意味であれば、Access で 2 つのシートを個別のテーブルとして貼り付けて追加し、2 つのテーブル間の開いた結合を使用してすべてのフィールドを選択するクエリを作成します。

于 2016-02-15T02:13:02.620 に答える
0

これを純粋に Excel で実行する場合は、INDIRECT()、ROW()、および MOD() 演算子を使用して実行できます。約 70,000 行のデータを計算するには、すべてを Excel で行うのが最善の方法ではないことを知っておく必要があります。

于 2016-02-15T02:25:14.710 に答える