日記

ITパスポートで調べた単語の記事。意味ないかなって思ってまとめたけど僕にとって意味ある記事になってよかった。
たくさん勉強してたんだなぁって実感できたし、このまままた頑張ろっ。 ここからは苦手な項目や頭になじまなお言葉をまとめていく作業になると思う。がんばって

ITパスポートで検索した言葉のまとめ

ITパスポートの学習をはじめて2週間以下の本の1周目が終わったのでわからない言葉を検索したことが増えたのでまとめてみる。

かんたん合格 ITパスポート過去問題集 平成29年度春期 CBT対応 - インプレスブックス

とくに脈絡なくリンク集みたいな感じになるかと思われます。

取得原価 - Wikipedia
取得原価とは 【Cost】|用語集|IFRS検定(国際会計基準検定)試験
減価償却累計額はどんな勘定科目?考え方と仕訳のルールを解説|MFクラウド 公式ブログ
事業継続計画 - Wikipedia
IrDA - Wikipedia
infraredの意味 - 英和辞典 Weblio辞書
associationの意味 - 英和辞典 Weblio辞書
infraの意味 - 英和辞典 Weblio辞書
インターネット・プロトコル・スイート - Wikipedia
Internet Protocol - Wikipedia
Transmission Control Protocol - Wikipedia
POP3とSMTP パソコン初心者講座
電子メール - Wikipedia
システムの開発の提案依頼書(RFP)・要求定義・要件定義は何が違うのか | 発注業者比較なら【アイミツ】
経常利益(けいじょうりえき)とは - コトバンク
「営業利益」「経常利益」「純利益」の違いって? | THE PAGE(ザ・ページ)
営業利益(えいぎょうりえき)とは - コトバンク
営業外収益(えいぎょうがいしゅうえき)とは - コトバンク
経常(ケイジョウ)とは - コトバンク
10進数から2進数への変換
電卓の持ち込みは禁止。
authorityの意味 - 英和辞典 Weblio辞書
certificateの意味 - 英和辞典 Weblio辞書
demilitarizedの意味 - 英和辞典 Weblio辞書
MIMEの意味 - 英和辞典 Weblio辞書
etherの意味 - 英和辞典 Weblio辞書
ソーシングの英語・英訳 - 英和辞典・和英辞典 Weblio辞書
divideの意味 - 英和辞典 Weblio辞書
serviceの意味 - 英和辞典 Weblio辞書
architectureの意味 - 英和辞典 Weblio辞書
orientedの意味 - 英和辞典 Weblio辞書
enterpriseの意味 - 英和辞典 Weblio辞書
as a - Google 検索
earningの意味 - 英和辞典 Weblio辞書
equityの意味 - 英和辞典 Weblio辞書
depreciationの意味 - 英和辞典 Weblio辞書
減価償却累計額の英語・英訳 - 英和辞典・和英辞典 Weblio辞書
competenceの意味 - 英和辞典 Weblio辞書
固定比率とは - 会計用語 Weblio辞書
marginalの意味 - 英和辞典 Weblio辞書
直並列の英語・英訳 - 英和辞典・和英辞典 Weblio辞書
[https://ja.wikipedia.org/wiki/%E6%9C%A8%E6%A7%8B%E9%80%A0(%E3%83%87%E3%83%BC%E3%82%BF%E6%A7%8B%E9%80%A0):title]
損益分岐点 - Wikipedia
ライフサイクル - Wikipedia
Platform as a Service - Wikipedia
POS - Wikipedia
プロダクト・ポートフォリオ・マネジメント - Wikipedia
S/MIME - Wikipedia
Multipurpose Internet Mail Extensions - Wikipedia
移動平均 - Wikipedia
[https://ja.wikipedia.org/wiki/%E3%83%88%E3%83%AC%E3%83%BC%E3%82%B5%E3%83%93%E3%83%AA%E3%83%86%E3%82%A3
(%E6%B5%81%E9%80%9A):title]
ジャストインタイム生産システム - Wikipedia
アンリ・ファヨール - Wikipedia
サプライチェーン・マネジメント - Wikipedia
コアコンピタンス - Wikipedia
コーポレート・ガバナンス - Wikipedia
安全性分析 - Wikipedia
限界利益 - Wikipedia

とりあえず検索したのは、このくらいだったと思う。
まだまだ問題集の中には320問くらいあって
160問くらい間違えた問題もあった感じで、速度は今各問につき20秒くらい遅いから35分オーバしてる状況。
160問くらいのうち、間違えているの同じような問題がおおいから整理してまとめようと思っている。
ここに無いけど共通暗号とか公開暗号とかしっかりまとめようと思う。
ほかにも他にも七夕とかあったけどまたそれは別のお話。
この調子で自分のペースでしっかり実施して問題になれること。
そして、ペースを崩して止まらないこと。
大切にしていきたい。

githubが見れない環境があったのでvbaのかけら再掲

Attribute VB_Name = "Module2"
Option Explicit

'リストオブジェクトの作成(正確にはすでにあるリストオブジェクトにチェックボックスを追加する)
'addメソッドを使用することでより動的にリストを作成できる

Private Const Numbering_Column As Integer = 1
Private Const Name_Column As Integer = 2
Private Const Flg_Column As Integer = 3


Sub createList()
Attribute createList.VB_ProcData.VB_Invoke_Func = " \n14"

  Dim list As ListObject
  Dim lRows As ListRows
  Dim lRow As listRow
'  Dim coll As New Collection
  
  MyDeleteeCheckBox
  
  'coll.Add (1)
  'coll.Add (2)
  'coll.Add (3)
  
  'リストにcheckBoxを追加
  With ThisWorkbook.Worksheets("Sheet4").ListObjects("MyTable")
    For Each lRow In .ListRows
      Debug.Print lRow.Range(Numbering_Column).address
      createCheckBox (lRow.Range(Numbering_Column).address)
      '初期化
      lRow.Range(Numbering_Column).Value = "False"
    Next lRow
  End With
End Sub

'全チェックボックスを削除
Private Sub MyDeleteeCheckBox()
    Dim tCtrl As Variant
    '全てのコントロールの取得
    For Each tCtrl In ActiveSheet.Shapes
        'コントロールの名前をチェック
        If Left(tCtrl.Name, 8) = "CheckBox" Then
            'チェックボックスならば削除
            ActiveSheet.Shapes(tCtrl.Name).Delete
        End If
    Next
End Sub


'チェックボックスの作成
'引数 address 型はString
Private Sub createCheckBox(address As String)
  With ThisWorkbook.Worksheets("Sheet4").OLEObjects.Add(ClassType:="Forms.CheckBox.1", Link:=False, DisplayAsIcon:=False)
         .Object.Caption = "チェック"
         .Object.Font.Size = 9
         .Object.BackColor = &H80FF80 '&HE0E0E0
          .Top = ActiveSheet.Range(address).Top
          .Left = ActiveSheet.Range(address).Left
          .Width = ActiveSheet.Range(address).Width
          .Height = ActiveSheet.Range(address).Height
          .LinkedCell = address
  End With
End Sub


'hiddenの時にTrue
Private Sub getHidden()

Dim lRow As listRow
With ThisWorkbook.Worksheets("Sheet4").ListObjects("MyTable")
    For Each lRow In .ListRows
      Debug.Print lRow.Range(Numbering_Column).address
      Debug.Print lRow.Range(Numbering_Column).EntireRow.Hidden
    Next lRow
  End With
End Sub

'テーブル範囲内に非表示があった場合解除

Private Sub defaultedList()
Dim lRow As listRow
Dim lColumn As ListColumn
With ThisWorkbook.Worksheets("Sheet4").ListObjects("MyTable")
    For Each lRow In .ListRows
      Debug.Print lRow.Range(Numbering_Column).address
      If lRow.Range.EntireRow.Hidden Then
        lRow.Range.EntireRow.Hidden = False
       End If
    Next lRow
    
    For Each lColumn In .ListColumns
      'Debug.Print lColumn.Range(Numbering_Column).address
      If lColumn.Range.EntireColumn.Hidden Then
        lColumn.Range.EntireColumn.Hidden = False
       End If
    Next lColumn
    
  End With
  
  
 End Sub


Private Sub defaultListFileter()
Dim lColumn As ListColumn
Dim iterator As Integer
 With ThisWorkbook.Worksheets("Sheet4").ListObjects("MyTable")
  For iterator = 1 To .ListColumns.Count
  .Range.AutoFilter Field:=iterator
  Next iterator
  End With

End Sub



Sub bolean()
Dim bool As Boolean
bool = (1 = 1)
End Sub  

文字列をとりだすVBA

VBAで文字列マッチングしたけれど、文字列の中身だけが必要だというときにMid関数を使用して中身を取り出すことができます。

正規表現のmatchプロパティなどで位置を取得したりします。

 

MID(String,開始位置+1、終了位置-開始位置-1)

上記でできます。

 

デザインパターンのstateパターンへの取り組み方

デザインパターンにはたくさんの先人の知恵が詰まっています。

stateパターンもそのうちの一つ。

 

私が思うメリット

stateパターンのメリットは状態に関する分岐を一箇所にまとめることができる点だと考えています。

 

stateパターンを使用するためにすること

1振る舞いの整理

まずどのような振る舞いがあるか整理します。

実際の振る舞いは思っていたとおりの数だったでしょうか?

ここで言うところの振る舞いとは、人間の行動で例えると歩くとか走るとかになります。

2状態の整理

次は状態の整理をします。

状態は様々な要素の組み合わせによって決定されることになります。

表などに書き出し状態に名前をつけます。

人間のお昼ごはんの行動に例えると

・時間が12:00-14:00

・人がお昼ごはんを食べていない

・人が空腹を感じている

・食料を持っている

上の状態の時、持ち物のご飯を食べるという振る舞いを実行させるといったようなことです。

・時間が12:00-14:00

・人がお昼ごはんを食べていない

・人が空腹を感じている

・食料を持っていない

・冷蔵庫に食材がある

・キッチンがある

・キッチンが使用できる

・ご飯を作る元気がある

上の状態の時、食材を加工して料理をつくり昼ごはんを食べる振る舞いを実施するなどになります。

今回はふたつの振る舞い二つの状態という状態と振る舞いが二つでしたが、状態の方が少なくなることもあります。

3stateパターンに置き換える。

stateパターンに置き換えます。

実際はデータストアを用意したりしますが、そこは出来ていると仮定していきます。

置き換えのときは振る舞いを定数にしてswitch文を使用して振る舞いを振り分けるのが良いかなと思います。

 

stateパターンのクラス図やシーケンス図は割愛します。

wikipediaや有名な本とかがたくさんあるので探してみてください。

 

vbaで参考にしたサイト

 

色の参考に

http://www.geocities.jp/nekonoyu_jp/vb001/vb001.html

プロパティの参考に

https://msdn.microsoft.com/ja-jp/library/office/ff841208.aspx

プロパティとかの参考に

https://msdn.microsoft.com/ja-jp/library/office/ff840244.aspx

チェックボックスの作成の参考に

ほとんどこちらの方のを参考にさせていただきました。

http://www.excel-excel.com/tipsctr/vbac_6.html

削除はもっと簡単に削除できる方法もあったのですが、原因不明のバグが生じたので安定的なこちらの方法を使用しています。

excel vba のプログラムのかけらを作ったので

簡単なチップを作ってみたので一通り紹介と記録

今回はは、githubに情報展開したのでそちらのリンクを貼ります。

githubのリンク

Mynote

はじめてgithubのGist使ったから細かいことよくわからないけど、とりあえず記録して。

リストデータからを動的にチェックリストを作成するためのプログラム群になります。
お納めください。

今回のコードではリストその物を動的に作成できるわけではないです。
リストを動的に作成することもできますが、チェックリストを作成することに重きを置いた記録になります。

前提として、これらのプログラム群を一つのモジュール内に作成しています。
クラスは使用していないです。

const …と書かれている変数群が記述されたコードはサブプロシージャやfunctionプロシージャ内に記述すると切替したときにオーバーフローのようなバグが発生してしまいますので、フィールドに記述してください。 詳細なバグの理由に関しては検証していません。

クラスで使用する際はクラスフィールドにモジュールに記述するときはモジュール内に記述します。
モジュールには、Option Explicit を先頭に書いていますが今回は割愛しています。

リストのcheckboxはOLEObjectのcheckboxを利用しています。
データの取得はあらかじめ準備しておいたテーブルリストオブジェクトのflg列に格納して行毎に取得することを想定する作りになっています。

コード毎の解説はまたやる気が出た時に頑張ってみます。  

全部のせた分です。

myNoteSummery