- ベストアンサー
時間の書式設定方法とセルの内容集計方法
- 質問(1)では、TEXTファイルの時間表記を正しく表示するためのセルの書式設定方法について尋ねられています。
- 質問(2)では、EXCELで特定の項目を集計する方法について尋ねられています。
- 質問(1)の解決方法が質問(2)の解決にもつながる可能性があります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
03:24 は 3分24秒なのですね、 しかし、小数になってしまうと、 03:24 で入っていたのか、03:24:00で入っていたのかを見分ける方法がありません。 A列をセルの書式設定で文字列にして下さい。 すると、貼り付けてもこの形になります。 最終的にN列にデータが欲しいのなら、A列はこのまま放置します。 N1: =INDEX(A:A,ROW()*2+1)/IF(LEN(INDEX(A:A,ROW()*2+1))>5,1,60) 下へコピペ。 これで、03:24 は 3分24秒となり、計算に使えます。 表示を03:24 にしたいなら、 セルの書式設定、ユーザー定義で [>0.041666666]hh:mm:ss;mm:ss にします。 しかし、私なら、混乱を避けるために表示は00:03:24にします。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
まづ、 後半の方の関数による解法は、質問者の式でよいのだろうが、 A列 A1:A8に(2行でワンペアの場合) 1 a 2 b 3 c 4 d とあるとして、 D1 に式 =INDEX($A$1:$A$10,(ROW()-1)*2+1,0) 下方向に式複写。 E1に 式 =INDEX($A$1:$A$10,(ROW()-1)*2+2,0) 下方向に式複写。 結果 1 a 2 b 3 c 4 d 0 0 一番下の0が出ないように巣す式は略。 質問者と似た式ですか、当方の式の方が、一般的になると思う。 ROW()-1し、それを2倍(2行で1ペアの場合)して、最後に+1している。 この考えがポイント。中学の数学の級数の第n項の式を思い出して。 === データ行が小数なら、こんなとおころへ質問して時間を無駄にしないでも、 CTRLキーをおしながら、目視でA1,A3,A5,A7・・をクリックして、コピーする。 持って行く列のセルの先頭行に張り付ける。 で仕舞。 == 質問前半は、テキストデータでも、時、分,秒の数がリーズバブルで:(半角)で区切っていると、エクセルは何よりも優先して(強制的に)」、時刻シリアル値に変換してしまう。24時間(=1日)を1とする数である。 エクセルの日付・時刻シリアル値というものの、学習や使用での重要性を、質問者は知らないのでは。 だから、今回は文字列ーー>時刻シリアル値という作業が不要になり、 あちは必要に応じて (1)好みの時刻の表示形式の設定 (2)時刻に関する演算 (3)エクセルの時刻に関する関数の利用 などに進めばよい。 この際に、Excel全般の解説書を読むべきだな。 ーーー >次のようなTEXTファイルがあるとします。 不完全な説明だ。メモ帳ででも、開いたイメージはこうです、というべきだと思う。それでも行末のコードなどがどうなっているかなど説明できないし、文字コードが何を使われているか、などを質問には書かないといけないと思うよ。
補足
>不完全な説明だ。 確かに示したのはメモ帳で開いたイメージと説明すれば十分との事 言われればそうのとうりです。 しかし、私の示した例でもさほど的はずれな事でも無いと私は思いますが ? >文字コードが何を使われているか、などを質問には書かないといけないと思うよ。 行末のコードは、全てリターンキー(改行)です。 >こんなとおころへ質問して時間を無駄にしないでも >学習や使用での重要性を、質問者は知らないのでは。 >この際に、Excel全般の解説書を読むべきだな。 失礼ですが、前回の投稿でも思っていたのですが あなたの投稿には、棘あるのでこれ以上(これからも) あなたからの回答は望みません。
- Nobu-W
- ベストアンサー率39% (725/1832)
質問(1)の回答だけですが ^_^; textファイルのコピペで貼付けじゃなくて・・・ 『デ~タ』タグの「外部デ~タ取り込み」の「テキストファイル」というので 読み込むと、いいかもですっ https://support.microsoft.com/ja-jp/office/%e3%83%86%e3%82%ad%e3%82%b9%e3%83%88-txt-%e3%81%be%e3%81%9f%e3%81%af-csv-%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab%e3%81%ae%e3%82%a4%e3%83%b3%e3%83%9d%e3%83%bc%e3%83%88%e3%81%be%e3%81%9f%e3%81%af%e3%82%a8%e3%82%af%e3%82%b9%e3%83%9d%e3%83%bc%e3%83%88-5250ac4c-663c-47ce-937b-339e391393ba?ui=ja-jp&rs=ja-jp&ad=jp
お礼
回答ありがとうございます。 参考のURLを参考にTXTを読み込んでみました。 手順は、以下のとうりです。 ------------------------------------------------------------- DATAが読み込まれて欲しいセル(A1)をターゲットセルに指定。 ファイル>開く>ファイルを開く 目的のTXTファイルを選択して開く。 項目は、テキストファイル(*.prn,*.txt,csv)を指定 次へ(N) テキストファイルウィザード 1/3 ----> 設定は、全てオリジナルのまま 元データの形式 カンマやタブなどの区切り文字によりフィールドごとに区切られたデータ(D) *最下部のプレビュー画面の表示は、意図した結果が表示されている。 次へ(N) テキストファイルウィザード 2/3 ----> 設定は、全てオリジナルのまま 区切り文字 タブ(T) *最下部のプレビュー画面の表示は、意図した結果が表示されている。 次へ(N) テキストファイルウィザード 3/3 ----> 設定は、全てオリジナルのまま 列のデータ形式 G/標準(G) *最下部のプレビュー画面の表示は、意図した結果が表示されている。 完了(F) ------------------------------------------------------------- 出力されましたが、 思っていたシートではなく、新規にBOOKが作成されて開いて 読み込まれたTXTファイル名のシートに結果が出力されました。 途中から時刻の表示がおかしいです。 21:20 が 21:20 までは、正常に出力されるも 25:22 が 25:22:00 となる。 以下ずっとこの間違いが続き 1:02:22 は 1:02:22 と1時間をすぎると又正常に出力されます。 最初に例に出したTEXTファイルは長くなるので 議題_2 から 58:54 までの途中のDATAを省略しています。 ---------------------------------------------------------------- 出力先が違う件とこの不可思議な出力を修正したいのですが 原因探求の方法はありますか ?
補足
試しに、 時間の部分を全て「時間:分:秒」の形式に統一すると 『デ~タ』タグの「外部デ~タ取り込み」の「テキストファイル」を読み込む方法でも TEXTファイルから直接コピペでも正常に読み込めました。 例: 03:24 を 0:03:24 に変更 これなら、コピペで直接希望のシートに読み込まれるので 質問(1)は解決しました。 DATAの読み込みでは思っていたシートではなく、 新規にBOOKが作成されて開いて 読み込まれたTEXTファイル名のシートに結果が出力されてしまう 出力先が違う問題は残りましたが・・・・・
お礼
ありがとうございます。 1)A列をセルの書式設定で文字列にする 2)テキストファイルをA列(A1)にコピペする 3)N列を利用、N1: =INDEX(A:A,ROW()*2+1)/IF(LEN(INDEX(A:A,ROW()*2+1))>5,1,60) 下方へコピペ 4)N列のセルの書式設定で[h]:mm:ssを選ぶと 0:03:24 0:06:27 0:10:11 0:58:44 1:02:22 1:05:51 N列のセルの書式設定で[>0.041666666]hh:mm:ss;mm:ssを選ぶと 03:24 06:27 10:11 58:44 01:02:22 01:05:51 以上確認しました。 >私なら、混乱を避けるために表示は00:03:24にします。 そうですね、 テキストファイルを最初から時間:分:形式に統一するか 教えていただいた、3)式でN列のセルの書式設定で[h]:mm:ssを選ぶか どちらかにしたほうが混乱なく処理できそうです。 式は大変参考に成りました。 ( [>0.041666666]hh:mm:ss;mm:ss は、こんな使い方もできるのですね。)