[[20220121071430]] 『時間表記を変換したい (例:1時間30分→90)』(ひこ) >>BOT

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

 

『時間表記を変換したい (例:1時間30分→90)』(ひこ)

 VBA初心者です。基本的?な質問で申し訳ないのですが、セルに記載されている『● 時間 ■ 分』を分だけで表記できるようにしたいです。分という文字列も入らないようにしたいです。(たとえば、『1 時間 30 分』なら、『90』と表示させるような感じです。)
どのようなコードになるかご教授頂けませんでしょうか。

< 使用 Excel:Excel2019、使用 OS:Windows10 >


すみません、記載漏れがあったので、追加させていただきます。
『● 時間 ■ 分』に加え、『■分』も、分だけで表記し、分という文字列が入らないようにしたいです。
(例:セルL3『50分』→セルL3『50』に変換)

自分なりに色々調べてはみたのですが見つかりませんでした、、、もしご存じな方がいらっしゃいましたら、ご教授お願い致します。

(ひこ) 2022/01/21(金) 07:39


『■分』の■部分だけとりだすのは、Cells(3,"L")=Minute(Cells(3,"L"))でできました。
しかし、『● 時間 ■ 分』を分表記にする方法がやはりわかりません。
(ひこ) 2022/01/21(金) 08:20

>『■分』の■部分だけとりだすのは、Cells(3,"L")=Minute(Cells(3,"L"))でできました

それなら、『● 時間 ■ 分』の●部分は「Hour(Cells(3,"L")」ですね。

(ひまつぶし) 2022/01/21(金) 08:43


 Minute(Cells(3,"L"))
 で分が求められるということは時刻データを表示形式で○○時間××分になるようにしているとみて。
 Cells(3,"L")*60*24
 ではどうだろうか?
(ねむねむ) 2022/01/21(金) 09:41

ひまつぶし 様
 ご回答ありがとうございます!Hourでためしてみましたが、1時間46分は『0:00』、56分は『0』になってしまいました💦

ねむねむ 様
 ご回答ありがとうございます!すみません、試してみましたがうまくいきませんでした💦
(ひこ) 2022/01/21(金) 10:38


>1時間46分は『0:00』、56分は『0』になってしまいました

表示形式が適切でないのでは?
(ひまつぶし) 2022/01/21(金) 12:03


ひまつぶし 様
 ありがとうございます!確認してみます!
(ひこ) 2022/01/21(金) 22:01

コメントくださった皆様ありがとうございました!
下記のコードでなんとかできました!
この度はご相談に乗って下さりありがとうございました!

−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
(エクセル L列の1〜10行目に『1 時間30 分』、『30 分』などの時間が記載されいます)

    Dim kari As Integer
    Dim tmp As Variant
    Dim i
    Dim j

    For kari = 1 To 10
        If InStr(Cells(kari, "L"), "時間") > 0 Then
            tmp = Split(Cells(kari, "L"), "時間")
            i = tmp(UBound(tmp) - 1)
            j = tmp(UBound(tmp))
            j = Minute(j)
            Cells(kari, "L") = i * 60 + j
        Else
            Cells(kari, "L") = Minute(Cells(kari, "L"))
        End If
    Next
(ひこ) 2022/01/22(土) 11:06

コメント返信:

[ 一覧(最新更新順) ]


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