VMware ESX vCenter Linux windows CCNA 忍者ブログ

IT号 着地号 いろいろ号

 ITに関しての調べ物です。バージョンや出展はつど記事に記載予定です。

カレンダー
02 2026/03 04
S M T W T F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
リンク
カテゴリー
かぶりもの
最新CM
[06/07 gay]
[02/16 gay]
[02/12 ヴィトン セカンドバッグ スーパーコピー ヴィトン]
[09/30 vente boutique canada goose paris]
[09/28 canada goose belgique]
最新記事
プロフィール
HN:
ESXi
性別:
非公開
バーコード
RSS
ブログ内検索
アーカイブ
最古記事
(01/14)
(01/20)
(01/20)
(01/26)
(01/26)
忍者アナライズ

ファイル取り込み処理の一部

Sub Main

'----------------------
'ファイル取り込み処理

For j = sID1 To endID1
filename = ThisWorkbook.Path & "\Disk_C_" & nengetu & Format(j, "00") & ".csv"
sheetsName = hostName & "_Disk_" & Format(j, "00")

'ファイルがない場合にループを抜ける処理
If Dir(filename) = "" Then
MsgBox j & "日のファイルが見つかりません"
GoTo Line1
End If

'外部テーブル範囲に取り込み
'---------------------------------
Set myQT = Sheets(sheetsName).QueryTables.Add( _
Connection:="TEXT;" & fileName, _
Destination:=Sheets(sheetsName).Range("A1"))
With myQT
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileCommaDelimiter = True
.TextFileSpaceDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileTabDelimiter = False
.TextFileOtherDelimiter = ""
.AdjustColumnWidth = True
.BackgroundQuery = False
.Refresh
.Delete
End With

'---------------------------------
'ここに、取り込んだファイルの処理内容を書く
'---------------------------------

Next j

'---------------------------------
MsgBox hostName & "マクロ正常終了"
Line1:


End Sub

拍手[0回]

PR
2018.05.24 (Thu)
Category[VBA]
Comment(0)

月末の判定例の一部

'---------------------------------
'月末の判定例
'細かな形式は全部省略
'matubiA1は、末尾の判定ができるセルを指定する。
'右から2桁を抽出してCase文で判定します。

Sheets(hogehoge).Select
matubiA1 = Range("A1").Value
matubiA1 = DateValue(matubiA1)
matubiA1 = Right(matubiA1, 2)

Select Case matubiA1

Case "03"
'28日の場合

endID1 = 28

Case "02"
'29日の場合

endID1 = 29

Case "01"
'30日の場合

endID1 = 30

Case Else
'31日の場合

endID1 = 31

End Select

拍手[0回]

2018.05.24 (Thu)
Category[VBA]
Comment(0)

エラーコード

Windowsで表示されるエラーコードの見方

 Windowsでエラーがあるたびに表示される「エラーコード」。コードを調べると原因がわかるとされているが、インターネットでキーワード検索をしてみたところで、まともな答えが得られないことのほうが多い。よくてエラーコードの意味を理解しないで、単に対策だけが記載されている程度だ。

 そこで、今回はこのエラーコードを解説することにしよう。とりあえず、マイクロソフトが出している正式なドキュメントは以下にある。

●[MS-ERREF]: Windows Error Codes
 https://msdn.microsoft.com/en-us/library/cc231196.aspx

 基本的には、これを読めばいいわけなのだが、量も結構あって、しかも英語である。そこで、今回は、よく見かけるエラーコードなどを例に、ごく大まかに解説することにする。

 Windowsのエラーコードは、32bit値で、通常は16進数で表現されている。大きく「HRESULT」「Win32エラーコード」「NTSTATUS」の3つがある。よく見かける0x8007xxxxというのがWin32エラーコード、0xCxxxxxxxというがNTSTATUSである。

 また、場合によっては、システムがこれらのエラーコードに「拡張コード」を付けて詳細情報を付加する場合もある。たとえば、Windows Updateによるアップグレードなどは、エラーの発生タイミングを通知する拡張コードをつける場合がある。

 まずは、エラーコードの構造から見ていこう。エラーコードは、32bitで表現される整数値を16進数で表現したものだ。エラーコードの先頭にある「0x」は以下が16進数であることを示すために使われる記法の1つだ。コンピュータ言語などで数値を表現する場合に使われる。

 エラーコードは常に16進数とするというルールがあれば、先頭に0xをつける必要はなさそうだが、実際には、コンピュータ内部には16進数も2進数も10進数もなく、みな同じ32bitのデータでしかない。人間に見えるように数値を画面などに表示する際に、どのように表示するのかを決めているだけだ。しかし、単に数字だけを表示すると10進数解釈してしまうかもしれない。16進数でも、A~Fが一回も使われない数字というのもあるわけで、見た目に紛らわしい。このため、エラーコードは16進数で表現するために必ず先頭に0xをつけているようだ。

 このエラーコードのうち、まずは、0xの次の文字が8なのかCなのかで解釈の方法が変わってくる。まずは、先頭が8のWin32エラーコードからみていくことにする。
Win32エラーコード

 Win32エラーコードは、本来はHRESULTと呼ばれるAPI呼び出しなどの処理の結果状態(成功したのかエラーなのか)を表現するデータの一種だ。そのデータ構造は下の図のようになっている。
Win32エラーの場合には、エラーコードは0x8007というパターンから始まる

 HRESULTは、32bitデータの下位5ビットでエラーの種類を表している。ただし、5ビット目(bit4。Xビット)は使われておらず0に固定である。最下位にあるSビットはエラーなのか、そうでないのかを表していて、エラーの場合ここが1になる。残りはゼロになるため、エラーコードの先頭は、必ず8、つまり0x8xxxxxxx」(xは任意の16進数)というパターンになる。

 HRESULTでは、bit5(6ビット目)からbit15は、ファシリティ(Facility)と呼ばれるフィールドで、エラーの分類(発生位置)を示す。ここが0x007の場合は、Win32エラーだ。なお、ファシリティのリストは前述の文書にある。

●HRESULT
 https://msdn.microsoft.com/en-us/library/cc231198.aspx

 つまり、エラーコードの上位4桁が「0x8007」になっているのはWin32エラーとなる。エラーコードの下位4桁は、ファシリティごとに意味が違っていて、Win32用のリストは、同様に以下のページにある

●Win32 Error Codes
 https://msdn.microsoft.com/en-us/library/cc231199.aspx

 簡単にいえば、表示されたエラーコードの先頭が0x8007だった場合には、前記のページにあるリストから下位4桁の数字を探せばいいことになる。
NTSTATUS

 エラーコードの最初の桁が「C」だった場合、パターンはまた変わってくる。
エラーコードがNTSTATUS形式の場合、0xCから始まるエラーコードとなる

 Win32と似ているが、ちょっと違う。NTSTATUSの場合、ファシリティはbit4(5ビット目)からbit15(16ビット目)までとなる。コードの部分は、Win32と同じく16ビットになっている。ただし、NTSTATUSの場合、ファシリティとエラーコードを一緒にしたリストになっているので、以下のページから、エラーコードそのものを探す。

●NTSTATUS Values
 https://msdn.microsoft.com/en-us/library/cc704588.aspx

 なお、ファシリティ部分がどのような意味を持つのかは、以下のページに記述がある。

●Appendix A: Product Behaviorの<4>以下  https://msdn.microsoft.com/en-us/library/cc231214.aspx#Appendix_A_4

 これで、とりあえず、エラーコードを「エラーメッセージ」に変換することが可能になる。では、次回はもうすこし具体的にエラーコードについて見ていくことにしよう。


・元ネタ
http://ascii.jp/elem/000/001/432/1432965/

拍手[0回]

2017.09.17 (Sun)
Category[Windows系]
Comment(0)

windows コマンド 検索 findstr

バッチ(bat)や一括検索のためのコマンドの使い方

カレントディレクトリ以下のすべてのファイルから、
「hoge」という文字列を検索し表示する。
ファイル名とそのディレクトリも表示される。

windows 10 proで試しました。
※バイナリファイルも読み込むため、浅い階層でやるといい結果が得られないでしょう。


>findstr /s /i "hoge" *
fuga.txt:hoge = aaa
hoge.txt:hoge = aaa
LogDir001\fuga.txt:hoge = aaa


http://www.tecblo.com/site-navi/1165.html
オプションの「s」は、documentsディレクトリ配下のすべてのディレクトリを再帰的に検索、
「i」は大文字小文字を区別しないで検索します。

拍手[0回]

2017.07.30 (Sun)
Category[bat]
Comment(0)

Oracleの情報

インスタンスとは?

 データベースの勉強を始めるにあたって、最初に出てくる非常になじみにくい言葉が“
インスタンス”です。

これは、おおざっぱにいうとデータベースシステムのまとまりのことであり、データベースを起動・停止する単位を表します。管理者の立場から見ると、1つのデータベース管理単位となります。UNIXの世界では環境変数「ORACLE_SID」で表されます。

拍手[0回]

2017.05.09 (Tue)
Category[DB系]
Comment(0)
Copyright © ESXi All Right Reserved.
Powered by Ninja Blog.
Template-Designed by ガスボンベ.