Brendaには、AとBの2つの列を持つExcelワークシートがあります。列Aには時間があり、AMかPMかは示されていません。代わりに、列Bには、インジケーターのすぐ左側のセルに応じて、AMまたはPMのいずれかが含まれます。ブレンダは、これら2つの列を1つの列に結合し、結果を軍用時間としてフォーマットしたいと考えています。したがって、A14に05:11が含まれ、B14にPMが含まれる場合、彼女は結合された列に17:11を含めることを望みます。

列で目的の結果を得る非常に簡単な方法がありますが、選択する式は、時間が列Aに格納される方法によって異なります。時間が実際に時間値である場合、列Cの次の式は正しく機能します。罰金:

=IF(B1="pm",A1+0.5,A1)

列Bのインジケーターが「pm」の場合、列Aの時間に半日(0.5、12時間のExcel時間値)が追加されるため、この数式は機能します。列Bのインジケーターが小文字( “pm”)でも大文字( “PM”)でも機能します。ただし、列Aに正午を過ぎた時刻(12:15など)がある場合は機能しません。その場合、式を少し変更する必要があります:

=IF(B1="pm",IF(A1<0.5,A1+0.5,A1),A1)

列Aに格納されている時間が実際にテキストとして格納されている場合は、変換を行う必要がありますが、実行は非常に簡単です。

=VALUE(A1 & " " & B1)

使用する数式のアプローチに関係なく、数式を含むセルをフォーマットして、軍事(24時間)形式で時間を表示するようにする必要があります。秒を表示するかどうかに応じて、13:30や13:30:55などの事前定義された時間形式([セルの形式]ダイアログボックスの[数値]タブに表示)のいずれかを選択できます。 HH:MM、H:MM、HH:MM:SS、H:MM:SSなどのカスタム形式を定義することもできます。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(12040)は、Microsoft Excel 97、2000、2002、および2003に適用されます。

Excel(Excel 2007以降)のリボンインターフェイスに関するこのヒントのバージョンは、次の場所にあります: