web-dev-qa-db-ja.com

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

エクセルシートがいっぱいあります。

次のようにフォーマットされています:1:00:15

ただし、セルの形式をテキストに変更すると、時間の基になる数値表現に変更されます:0.041840278

どうすればセルをテキストセルに変換できますが、それでも時間を保持できますか?

32
Gareth Simpson

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

26
Aditya Mukherji

この種のExcelは常にExcelの苦痛です。Excelがセルを時間に変換すると、それらは内部的に数値として保存されるため、関数を使用して値を変換する必要があります。ここに私がそれを行う方法を知っている最良の方法があります:

時間が列1から始まる列Aにあると仮定します。セルB1に次の式を入力します。=TEXT(A1,"hh:mm:ss AM/PM")、列Bのデータの最後まで式をドラッグします。列Bから値を選択し、コピーします。列Cに移動して[特殊貼り付け]を選択し、[値]を選択します。列Cにコピーしたセルを選択し、セルを「テキスト」としてフォーマットします。

79
Robert Gamble

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

また、別のセルのテキストに変換する場合:

=TEXT(A1,"hh:mm:ss")
10
LukStorms

簡単です。 1:00:15などの時間値をテキストに変更するには、「TEXT」機能を使用できます。たとえば、時間値(1:00:15)がセル 'A1'に含まれている場合は、Text(A1、 "h:mm:ss")を実行することでテキストに変換できます。結果は同じように見えます:1:00:15。ただし、今回はテキスト値になっていることに注意してください。

5
Mark Chin

以下は私のために働いた

  • 最初にメモ帳で「1:00:15」と言う内容をコピーします
  • 次に、メモ帳からテキストをコピーする必要がある新しい列を選択します。
  • 次に、右クリックしてセルの書式設定オプションを選択し、その選択番号タブでそのタブでオプション「テキスト」を選択します。
  • 次に、メモ帳からコンテンツをコピーして、このExcel列に貼り付けます。テキストですが、形式は「1:00:15」です。
0
Prakash Naykodi

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

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

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

End Function
0
Makah