[[20080306164709]] 『シリアル値でその日の残り時間を計算して表示させ』(MSCL) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『シリアル値でその日の残り時間を計算して表示させるには?』(MSCL)
 Excel2000, WINDOWS2000です。
 みなさま、いつもお世話になっております。
 シリアル値から『時刻』を表示させることはできます。
 あくまでも『表示』だけなのかも知れませんが、
 表示形式の時刻で『13:30』を選べば、時刻が表示されます。

 では、例えば、午後1時半『13:30』であれば、
 その日の残り時間は、10時間半です。
 これを計算させて『10.5』のように表示させるには
 どんな計算をしたらよいでしょうか?
 おおもとの数値はシリアル値でお願いします。

 時刻のセルがA1として
 =("24:00"-A1)*24
 とすれば一応出ます。
 かな?
 (ぽ)

 ぽさんありがとうございます。

 説明不足ですみません。

 元の値はシリアル値なので、『39375.0742361111』のような数値です。
 例えば、このシリアル値は、『2007/10/20  1:46:54』という日付と時刻を表しています。
 この場合、この例では、10/20という日はあと何時間何分何秒残っているの?
 かを知りたいのです…。

 >これを計算させて『10.5』のように表示させるには
 >あと何時間何分何秒残っているの?
 は、よく理解できませんが、

 =MOD(-A1,1)としますと、そのように計算できると思います。
 表示形式は、h:mm:ssなどお好みのものにして下さい。     (6UP)

 パチパチ!
 一生懸命計算してたのが情けない・・・
 (ぽ)

 6UPさん、ありがとうございます。

 やってみましたが、、、
 シリアル値     同、日付時刻表示     =("24:00"-A1)*24    =MOD(-A1,1)
 39375.07423   2007/10/20 1:46     -944977.782         18:45
 という感じになりました…。
 私のやり方がマズいですか?…

 この例だと、右端の結果は、この日の残り時間は、
 22:14で、さらに22.233と数値で表示させたいです…。

 では、=MOD(-A1,1)*24 でしょう?              
 =MOD(-"2007/10/20 1:46",1)*24 → 22.23333333
 と表示しています。                  (6UP)


 >18:45
 -944977.782に対して=MOD(-A1,1)
 とするとそうなりますが。
 39375.07423に対して=MOD(-A1,1)
 ですよ。
 私の式は無視しちゃってくださいな。
 (ぽ)

 6UPさん、ありがとうございます! できました!

 MODというのは、余りで使う関数ですね。
 時間でも応用できるんですね…マイナスまで付けて…。
 とても思いつきません。また一つ、勉強になりました。

 お二人ともチャット並みの迅速な回答、
 ありがとうございました。

はじめまして。よろしくお願いします。
実は、セルに、(C6H10O5)nの化学式の数字の部分を下付きで表示し、その化学式をを別のセルに表示したいのですが、下付きでは示されず、そのままの(C6H10O5)nで表示されます。コピーではなく、参照して式を作りたいのですが、下付のまま表示することはできるのでしょうか?

 ↑
 >はじめまして。
 との事ですので、MSCLさんとは別の方でしょうか?
 
 であれば、新規の質問をなさったほうがよろしいのではないでしょうか?
 内容も、まるで別の案件のようですし。。。
 
 ちなみに、こちらは参考になりますか?
[[20051112172942]]『VLOOKUP関数で上付き文字使用のデータ抽出』(初心者)
  
 (キリキ)(〃⌒o⌒)b

 一応、マクロで考えて見ましたが、、、
 
 シートモジュールへコピペ
'-----------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim MyTxt As Variant
    If Target.Count > 1 Then Exit Sub
    With CreateObject("VBScript.RegExp")
        .Pattern = "\d+"
        .Global = True
        If .Test(Target) Then
            Application.EnableEvents = False
            Target.Value = Target.Value
            For Each MyTxt In .Execute(Target)
                Target.Characters(Start:=MyTxt.FirstIndex + 1, Length:=MyTxt.Length).Font.Subscript = True
            Next MyTxt
        End If
    End With
    Application.EnableEvents = True
End Sub
 
 ※検証不足かもしれませんのであしからず。。。
  数式で反映させた後、値のみを返してます。
 
 (キリキ)(〃⌒o⌒)b

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.