初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2013-11-07 23:00:40

ぽんた
Guest

横一列のデータを縦にまとめる方法

win ファイルメーカー12

ファイルメーカー初心者です。

品名1  製品番号1  品名2   製品番号2  …
AAA   BBB      あああ   いいい    …

となっているエクセルデータがあります。
品名、製品番号それぞれ1~10まであります。
これをファイルメーカーに取り込むのですが、

品名   製品番号
AAA   BBB
あああ  いいい


というように、 レコード数を縦に増やしていく形にしたいのですが、どのようにやればよいか見当がつきません。
ご教授ください。

#2 2013-11-08 08:47:33

Shin
Member

Re: 横一列のデータを縦にまとめる方法

エクセル側で、2列に手で移動させる、とか、2列ずつ10回インポートするのが手っ取り早いのでは。

Offline

#3 2013-11-08 10:13:58

ぽんた
Guest

Re: 横一列のデータを縦にまとめる方法

Shin様、ありがとうございます。
エクセルデータと書いてしまいましたが、エクセルで表示できる行数を超えており、CSVで落としてあります。
データ数は80万レコードほどあります。
品名、製品番号以外に、購入日があります。購入日のフィールドは1つです。

  購入日   品名1  製品番号1  品名2   製品番号2  …
2013/11/01 AAA     BBB      あああ   いいい    …

今後も月1回、定期的に作業するのですが、10回インポートを自動化させる方が手っ取り早いのでしょうか?

#4 2013-11-08 10:28:15

himaganee
Guest

Re: 横一列のデータを縦にまとめる方法

そのままインポートして計算フィールドで繰り返し10に変換して、分割インポート、とかでもできそうだけど
10個のうちには空欄もあるんじゃないですか?
毎月800万レコードかあ...

#5 2013-11-08 13:14:16

ぽんた
Guest

Re: 横一列のデータを縦にまとめる方法

himaganee様、ありがとうございます。
おっしゃる通り、10個の内に空欄があります。
殆どが5個以内にデータが収まっていますが、10個入っているデータが僅かですが存在します。
繰り返しに…のやり方、詳しく教えて頂けますでしょうか?

#6 2013-11-08 14:03:22

Shin
Member

Re: 横一列のデータを縦にまとめる方法

10回インポートすると、数百万レコードの削除が必要になりますので、イマイチですね。
himaganee さんの提案の、中間テーブルを作ってそのままインポート、が最善でしょう。
繰り返しフィールドの計算式は、例えば、品目用のものでしたら
Evaluate ( "品目" & Get ( 計算式繰り返し位置番号 ) )
でいけると思いますが、テーブル名が必要になるかもしれません。

Offline

#7 2013-11-08 14:30:44

ぽんた
Guest

Re: 横一列のデータを縦にまとめる方法

Shin様

Evaluate ( "品名" & Get ( 計算式繰り返し位置番号 ) )で行いましたが上手くいきません。
品名の繰り返しフィールド(10)を作成し、計算式で上記式を入れました。
結果、最初のフィールドには入りましたが、残りは反映されません。
私の考え方が間違っているのでしょうか。

#8 2013-11-08 15:27:41

Layouter
Guest

Re: 横一列のデータを縦にまとめる方法

Evaluate ( "品名" & Get ( 計算式繰り返し位置番号 ) & "[1]" )
ですかね。

#9 2013-11-08 16:38:11

チポ
Member

Re: 横一列のデータを縦にまとめる方法

> Evaluate
索引非保存としないとインポートでもだめですね。

Extend ( GetField ( "品名" & Get ( 計算式繰り返し位置番号 ) ) )
これはインポート時に計算してくれますが、
編集で再計算してくれない。


べたべたに
Choose ( Get (計算式繰り返し位置番号) ; "" ; 品名1[1] ; 品名2[1] ; 品名3[1] ; 品名4[1] ; ・・・・)
これなら索引設定できます。


索引の有無で
それをインポートするときの違いが出ますかね??

Offline

#10 2013-11-08 17:19:29

Layouter
Guest

Re: 横一列のデータを縦にまとめる方法

非保存の方が、実テーブルにインポート時に計算するからいいかな。

「最初のフィールドには入りました」というので油断しましたが、インポート時に計算したければ
Evaluate ( "品名" & Get ( 計算式繰り返し位置番号 ) & "[1]" ; 製品番号10 )
のように最後のフィールドに依存するようにしないとだめみたいですね。

#11 2013-11-08 18:12:48

ぽんた
Guest

Re: 横一列のデータを縦にまとめる方法

Layouter様、チポ様、ありがとうございます。

Extend を使用して、「出来た!」と思ったら編集時に何の反応もなく、困っていました。
そして再びここに来たら、チポ様がちょうどそのことを分かりやすく書かれていたので、Choose で対応しました。
その結果、考えていた形になりました。
皆様ありがとうございました。

Registered users online in this topic: 0, guests: 1
[Bot] claudebot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.004 seconds, 7 queries executed - Memory usage: 521.86 KiB (Peak: 526.4 KiB) ]