アプリ版:「スタンプのみでお礼する」機能のリリースについて

数百件分を秒換算しなくてはなりません。
良い方法はありますか?

A 回答 (10件)

#3です。


解決、おめでとうございます。

ええと、FIND("分",A1) は
「"分"という文字はA1のセルの文字列の何文字目にあるか」
ということを意味します。

VALUEは、文字列を数値に変換するための処理で、全角で入力していた場合に、数値として計算可能にするための変換です。実際には、Excelでは全角の数値でも普通に計算してくれるので、あまり意味はないのですが、つい、いつもの癖で入れてしまいました。

「LEFT(A1,B1-1)」はA1のセルの文字列の左から(B1-1)文字分を取り出すという意味で、
「MID(A1,B1+1,C1-B1-1)」はA1のセルの文字列の左から(B1+1)文字目から、(C1-B1-1)文字分だけ取り出すという意味です。
    • good
    • 2
この回答へのお礼

ご回答ありがとうございます。度々スミマセン。
とっても丁寧に解説頂いたお陰で、こんな私にも理解することが出来ました。
嬉しいっ(>_<)
応用できるようになると良いなぁ~。頑張るぞ!

お礼日時:2004/02/26 09:41

エクセルは時刻を数値値として持っています(ここがミソ)。


一日24時間を1とします。1時間は1/24=0.04166666・・です。逆に数値の積もりで0.04166・・とセルにいれ、表示形式を時刻にすると1:00になります。分は1/(24*60)=0.000694444です。
一秒は1/(24*60*60)=0.0000115740741
です。だから今の値を1/(24*60*60)で割れば
秒数が出ます。
例えばA1に0:25:13と入れ、B1に=A1/(1/(24*60*60))を入れると、1513(表示形式を数値にすること)となります。以上の内容のことを、表示形式を[ss]にするとエクセルがやってくれて、そのセルに表示してくれると言うことです。このカラクリを知りましょう。
    • good
    • 10
この回答へのお礼

常々疑問に思っていましたが、そう云うカラクリだったんですか!
このことを理解しておけば、今回の問題も自分で解決できたかもしれません。
(でもやっぱり私じゃ出来なかったかもw)
今後は幅が広がりそうです。ありがとうございました。

お礼日時:2004/02/26 09:46

> 90785秒 となっちゃうんですよ



それは「0:25:13.05」または「25:13.05」とするべきところを間違え
て「25:13:05」とした場合の数値ですね。
    • good
    • 5
この回答へのお礼

あらやだ。私のうっかりが原因でした(^-^;)
ご指摘ありがとうございました。

お礼日時:2004/02/26 09:30

セルの書式設定を出して、表示形式のタブを開き、分類からユーザー定義を選択します。


で、ユーザー定義を
[ss]
と入力してOKします。
これでセルに入力している時間が秒で、表示してくれます。
こういう事じゃないんですか?
    • good
    • 1
この回答へのお礼

ありがとうございます。
そうすると 90785秒 となっちゃうんですよ。

お礼日時:2004/02/25 17:21

入力を変更する場合は、


入力を0:25:13.05になおして表示形式を[ss]秒

入力を現状のままなら、隣のセルに
=TIMEVALUE(SUBSTITUTE(SUBSTITUTE(A1,"分",":"),"秒",".")) で表示形式が[ss]秒
または
=TIMEVALUE(SUBSTITUTE(SUBSTITUTE(E8,"分",":"),"秒","."))/"0:0:1" で表示形式が 0秒
でも可能です。
TIMEVALUEは時刻形式の文字列を数値に変換する関数
SUBSTITUTEは置換の関数
/"0:0:1"は時刻形式の数値を秒数(整数)にする設定です。
分の場合は/"0:1:0"、時間の場合は/"1:0:0"で変換できます。
    • good
    • 1
この回答へのお礼

ご回答ありがとうございます。
聞き返すまでもなく、関数の解説付きだなんて!
感激です(T_T)

お礼日時:2004/02/25 15:10

No.1です。



文字列で「25分13秒05」と入力しているなら、以下の数式で出来ます。
A1に「25分13秒05」と入力されているとすると、

=TEXT(SUBSTITUTE(SUBSTITUTE(A1,"分",":"),"秒","."),"[ss]秒")
    • good
    • 1
この回答へのお礼

お手間取らせてしまって、本当にごめんなさい。
わぉ!なんて簡単なんでしょう。驚きです。
お陰様ではかどります。ありがとうございました。

お礼日時:2004/02/25 15:06

No1の方がかかれたように、もしセルを選択して、数式バーの内容を見てみて「0:25:13」のような形式になっていれば、セルの書式設定でユーザー定義→ [ss]"秒" にしてみてください。



秒表示になります。
    • good
    • 2
この回答へのお礼

ご回答ありがとうございます。
90785秒になっちゃいました。あれぇ(?_?)

お礼日時:2004/02/25 14:50

Excelが使えるのであれば、Excelを使用する方法が簡単です。



まず、セルA1に「25分13秒05」を入れます。
セルB1に「=FIND("分",A1)」
セルC1に「=FIND("秒",A1)」
セルD1に「=VALUE(LEFT(A1,B1-1))*60+VALUE(MID(A1,B1+1,C1-B1-1))&"秒"」
と入力すれば、セルD1に1513秒と表示されます。

あとは、変換元をA2、A3、A4…にコピーして、
セルB1~セルD1をB2~D2以降にまとめてコピーすれば
一気に変換できます。

桁数が同一の場合には#2さんの方法で十分とおもわれますが、「分」の部分が3桁以上あるかもしれないのでしたら、こちらの方法をお勧めします。
    • good
    • 1
この回答へのお礼

わぁわぁ!出来ました!ありがとうございますm(_ _)m

お手数ですが、それぞれの関数の役割を教えていただけますでしょうか。
「条件に当てはまる文字の位置を返す」等となっていますが、それでは
理解できないもので(^-^;)

お礼日時:2004/02/25 14:48

対象のアプリケーションをExcelと仮定します。



25分13秒05
がA1セルに文字列として設定されているとして、

MID(A1,1,2)で"25"の文字列が取得できます。
MID(A1,4,2)で"13"の文字列が取得できます。

B1セルに
=(VALUE(MID(A1,1,2))*60+VALUE(MID(A1,4,2)))&"秒"

とすると、"1513秒"の文字列が得られます。
    • good
    • 0
この回答へのお礼

本当だ本当だ!ありがとうございます(;_;)

ところで MID(A1,1,2) が示している「A1」は参照先セルのことですよね。
カンマで区切っている「1」と「2」は、何を指しているのか教えていただけますでしょうか。

お礼日時:2004/02/25 14:42

こんにちは。

maruru01です。

OSとアプリケーションは明記しましょう。
(アプリケーションのバージョンも)
(質問文を読み返して、赤の他人に通じるかどうか考えてみましょう。)

おそらくExcelと思いますが、データはどのように入力されていますか?
「25分13秒05」という文字列が直接入力されていますか?
それとも、「0:25:13.05」と入力して、セルの表示形式で
「25分13秒05」となっていますか?
セルを選択して、数式バーの内容を見てみて下さい。
「0:25:13」のような表示になっていますか?
もしなっておらず、セルの表示とまったく同じになっていたら、
セルには文字列として入力されているので、結構複雑な数式を使用することになります。

状況をもっと詳細に説明して下さい。

この回答への補足

OS:Windows XP
アプリケーション:Excel2003

補足日時:2004/02/25 14:34
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
あ~ん!スミマセンでした(>_<)

表示形式は標準で「25分13秒05」と入力してあります。
「0:25:13」に直すのは簡単なので、こちらの方が都合が良ければ
その方法を教えて下さい。

お礼日時:2004/02/25 14:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!