こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセルで抽出されたデータを時刻データにしたい

 あるソフトから勤怠のデータをエクセル形式で抽出する事が出来るのですが、
その際に、ソフトの方の設定なのか、エクセルデータになった際に時刻のデータは
セルの書式設定での表示形式が「ユーザー定義」の「hh:mm」と自動的になっています。

 なので、セル上でも「16:30」などの表記になっているのですが、時間が2桁でない時
(9:50 や 0:25)は、上の表示形式に当てはまらないのか、表示形式は「標準」となっており
セルに表示される形は「9:50」「0:25」なのですが、最初から左詰めになっていて
時刻データとしての扱いがされていない為、勤怠データとして、その後の出勤時間の
計算等をする際に活用が出来ない状況となっています。

 この表記が変わっているデータが、全体の中でもかなり多い為、もし変換をする方法が
あるのであれば、教えていただきたいと思います。

 よろしくお願いします。

投稿日時 - 2012-08-28 11:07:29

QNo.7667662

困ってます

質問者が選んだベストアンサー

実は、私も某勤怠ソフトでエクセルデータに変換した時に同様の事がありました。
その時は、文字列というよりも、一桁の時間の前に半角のスペースが入っていました。

「_9:30」みたいな感じです。(アンダーバーが半角スペース)

時間が2桁だったら普通に時間になるんですよね?
だったら、上記のような状態になってませんか?

もし半角スペースが入っているようでしたら、置換で半角スペースを取ってみてください。

投稿日時 - 2012-08-28 12:34:08

お礼

 回答ありがとうございます。

おっしゃる通り、一桁の数字の前に半角スペースがありました。
そのスペースを取り除いた所、見事に正常に表示がされるように
なりました!

これで、特に計算等は問題なく行なえると思います。
今回は、本当にありがとうございました。

投稿日時 - 2012-08-28 13:09:25

ANo.3

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.2

 今仮に、Sheet1に問題となる「時刻を表している文字列データ」が存在しているものとしますと、まずは別シート(ここでは仮にSheet2とします)のA1セルに次の関数を入力して下さい。

=IF(AND(ISNUMBER(INDIRECT("Sheet1!R"&ROW()&"C"&COLUMN(),FALSE)+0),INDIRECT("Sheet1!R"&ROW()&"C"&COLUMN(),FALSE)<>""),INDIRECT("Sheet1!R"&ROW()&"C"&COLUMN(),FALSE)+0,INDIRECT("Sheet1!R"&ROW()&"C"&COLUMN(),FALSE)&"")

 次に、Sheet2のA1セルをコピーして、Sheet2の他のセル(Sheet1においてデータが存在している全ての範囲に対応するSheet2の範囲)に貼り付けて下さい。
 すると、時刻や日付等を表す文字列は、シリアル値に変換され、数値に変換出来ない文字列は文字列データのままとなります。
 後は、セルの書式設定で、時刻データが存在しているセルは[時刻]に、日付データが存在しているセルは[日付]に、という具合に、Sheet2の各セルに適時書式を設定してから、Sheet2のデータを基にして計算等を行えば宜しいのではないかと思います。

投稿日時 - 2012-08-28 12:01:41

お礼

回答ありがとうございます。

今回は他の方の回答を採用させていただきました。
計算式なども教えていただいたので、また応用できるところが
あれば活用させていただきます。

ありがとうございました。

投稿日時 - 2012-08-28 13:11:42

ANo.1

>セルに表示される形は「9:50」「0:25」なのですが、最初から左詰めになっていて


文字として時刻が入力されていますので
(’9:50)という感じ


step:1 空きセルに”1”を入力し、それをコピー
step:2 時刻データセルを全部選択 (変換したいもの以外が含まれていても可)
step:3 形式を選択して貼り付けで、乗算(M)を選択

で時刻データに変換されるはずです。

投稿日時 - 2012-08-28 11:26:40

お礼

回答ありがとうございます。
今回は他の方の方法でうまくいきましたので
そちらのやり方を参考にさせて頂きました。

ありがとうございました。

投稿日時 - 2012-08-28 13:01:02

あなたにオススメの質問