title: Why is this format "[$-F400]h:mm:ss\ AM/PM" a 24 hour format in Excel?
body: <p>And yet this one <code>[$-409]h:mm:ss\ AM/PM;@</code> is not and shows AM/PM correctly? </p>
  
  <p>I'm using NPOI to read from a Excel file and extract some useful data for my app. While I was parsing dates, I stumbled across this interesting case.</p>
  
  <p>This date <code>16:00:00 (4 o'clock in the afternoon)</code> with this format <code>[$-F400]h:mm:ss\ AM/PM</code> is showing as <code>16:00:00</code> in excel. </p>
  
  <p>Yet a similar format, <code>[$-409]h:mm:ss\ AM/PM;@</code>, shows <code>04:00:00 PM</code>, which I believe is correct because of the <code>AM/PM</code> notation at the end of the format string.</p>
  
  <p>My excel version is this one: <code>Microsoft® Office Excel® 2007 (12.0.6665.5003) SP3 MSO (12.0.6662.5000)</code></p>
  
  <p>And I'm using the latest version of NPOI (got from the source code), which interprets <code>[$-F400]h:mm:ss\ AM/PM</code> as <code>hh:mm:ss tt</code> (which doesn't match the way excel shows it)</p>
  
  <p>I know that <code>[$-XXXX]</code> is the locale, I don't know about <code>;@</code>.</p>
  
  <p>Why, depending on the circunstances, excel is completely ignoring the <code>AM/PM</code> part?</p>
  
  <p><strong>EDIT: It appears the <code>@</code> is a text-placeholder for <code>AM/PM</code>  it seems. Is the absence of this token forcing excel to show a 24-hour format?</strong></p>