Excelで時間フィールドを文字列に変換する

エクセルシートにタイムがいっぱい書いてあるんだ。

このようにフォーマットされている:1:00:15

しかし、セルの書式をテキストに変更すると、0.041840278という数値に変わってしまいます。

セルをテキスト・セルに変換しても、時刻は表示されたままなのですが。

エクセルでは、この種の操作はいつも面倒で、関数を使用して値を変換する必要があります。エクセルがセルをTimeに変換すると、内部では数値として保存されるからです。私が知っている最良の方法を紹介しよう:

セルB1に次の数式を入力します:B列の値を選択してコピーし、C列に移動して「"貼り付け特殊」を選択し、「"値」を選択します。 C列にコピーしたセルを選択し、セルを"Text"としてフォーマットします。

解説 (5)
ソリューション

列をコピーする メモ帳に貼り付ける もう一度コピー テキストとして貼り付ける

解説 (4)

これらの数値を時間として表示する場合は、セルの形式をTimeに変更します。

そして、それを別のセルのテキストに変換したい場合:

=TEXT(A1,"hh:mm:ss")
解説 (2)

簡単だ。1:00:15のような時間値をテキストに変更するには1:00:15」のような時刻の値をテキストに変換するには、 'TEXT'関数を使います。例えば、セル 'A1'に時間値(1:00:15)がある場合、次のようにしてテキストに変換できます:Text(A1,"h:mm:ss")。結果は1:00:15と変わりません。しかし、今回はテキスト値になっていることに注意してください。

解説 (0)

以下は私のために働いた。

-最初にメモ帳に「1:00:15」と書かれたコンテンツをコピーします。 -次に、メモ帳からテキストをコピーする必要がある新しい列を選択します。 -次に、右クリックして[フォーマットセル]オプションを選択し、その選択番号タブでそのタブで[テキスト]オプションを選択します。 -メモ帳からコンテンツをコピーし、このExcel列に貼り付けます。 テキストですが、「1:00:15」の形式です。

解説 (0)

[日付]変数にコピーしてから、 format()を使用してテキストに変換します。 例:

Function GetMyTimeField()
    Dim myTime As Date, myStrTime As String

    myTime = [A1]
    myStrTime = Format(myTime, "hh:mm")
    Debug.Print myStrTime & " Nice!"

End Function
解説 (0)