2017-08-10 8 views
18

今私は混乱しています。 this questionの回答を作成しようとしていました。私はRange.Replaceは常にChr(1)に対してtrueです

ActiveSheet.Cells.Replace Chr(1), "", xlPart, , True, , False, False 

が完全にシートをクリアしていることに気づいたいくつかのテストを実行することにより

Chr(42)*ですが、なぜChr(1)なのでしょうか?

理由を知っていますか?それは何らかの種類の隠れたプレースホルダですか?

+4

興味深い。ドキュメント化されていない機能でなければなりません。 –

+0

ちょうど1時間...しかし、これは恩恵で終わるように感じる...また '[A1] .value =" - "&Chr(1)&" - "'かなり奇妙に見える:D –

+2

これは非常に面白い。ここに私が見つけたものがあります。 'Chr(1)'は 'Headingの開始 'を意味し、ここでは文書(https://www.cs.tut.fi/~jkorpela/chars/c0.html)は全てのASCII制御文字を記述する。別の政府のウェブサイト(https://www.its.bldrdoc.gov/fs-1037/dir-034/_5089.htm)は、Chr(1)に対してより良い "混乱しやすい"説明をしています。 – ian0411

答えて

0

ASCII 1は「SOH」(開始の見出し)で、ASCII 2の「STX」はヘッダーの終わりを意味します。データストリーム。 (これにより、ファイル内の実際のデータよりも先にファイル内のアドレス、メモなどを「非表示にする」ことができます)。Excelがファイルの先頭から開始してすべてを含むようにコマンドを解釈しているようです。

関連する問題