Quantcast
Channel: 日曜大工、DIY、Excel VBAのページ
Browsing all 83 articles
Browse latest View live

Image may be NSFW.
Clik here to view.

Excelファイルから「名前の定義」を削除するマクロ

「名前の定義」を削除するマクロ  [Excelから名前の定義を削除するマクロ]多くの人が気が付いてないのですが、Excelファイルが無駄で役に立たない情報を溜め込んでいる場合があります。その一つに、「名前の定義」があります。●確認方法は1)ファイルを開ける2)挿入 → 名前 →...

View Article


ファイルopenを楽にする

参照したいExcelファイルが開いてなければ前回置いてあったフォルダーに行く参照したいファイル名(*.xls)を開くと、このファイル名がThisWorkbook.Sheets("初期値").Cells(2, 2)に書き込まれます。またフォルダー名がThisWorkbook.Sheets("初期値").Cells(3,...

View Article


すべてのブックを非表示から表示に変更する

開いているブックのシートをすべて表示させる 用途:VBAがシートを非表示にしたため不要なシートを削除できないことがあります。そこですべてのシートを表示させたい。 Dim sh As Object Dim wb As Object For Each wb In Workbooks  For Each sh In wbook.Sheets   sh.Visible = True  Next Next

View Article

ソートしてから重複行を削除

ソートして、ついでに重複行を削除 用途:ソートと同時に重複行を削除したい場面がときどきあります。このときに使うVBAです。 下記コードの説明: データがA、B列に記入されています。2列だけです。 まずこれらA、B列でソートします。 A列が優先されます。 次に、重複した行を削除した状態で、C、D列にペーストします。    AdvancedFilter     Unique:=True...

View Article

セル内の改行コードを削除

セル内の改行コードを削除Excelでは改行コードが2種類混在している。だから下記のコードのように2行ともに実行する必要がある。 使う場面: セルに記入されている文字列を取得する。このときセル内で改行されていると改行コードが混じってしまう。そこでこの改行コードを削除したい。 .Cells(tempRow, tempCol) = Replace(.Cells(tempRow, tempCol),...

View Article


日時をシリアルから文字列に変換

日時をシリアルから文字列に変換使う場面:Excelで使用される日時は、実態は実数でありシリアルと呼ばれている。MS Office内 でコピーするなら余分なことを考える必要は無い。ところが違うアプリにコピーする場合は一度文字列に変換するのが汎用的な方法である。  strNengappi = Year(.Cells(2,2) & "/" & Month(.Cells(2,2))...

View Article

サブフォルダ名をリストアップする

指定するフォルダのサブフォルダ名をすべてリストアップする用途: 指定したフォルダーとサブフォルダーを含めて特定のファイルを探す 下記コードは、サブフォルダー、さらにこのサブフォルダー、さらに・・・と何層でもどんどん深いサブフォルダーを自動的に探します。 Sub sFolderSearch(ByVal strSFName0 As String, ByVal ShN As String)    Dim...

View Article

周期的に実行するタイマー

周期的に実行するタイマー動作:周期的にマクロ Keisan  を動作させます。     .Cells(2, 2)に60以上の整数を記入すると次回の実行を中止(Exit Sub)する 使い方:.Cells(2, 2)にminuteを表す整数を入れておく。 下記コードをプロシジャー(マクロ) Keisan に記入する。 使う場面:...

View Article


グラフにデータラベルを付ける

グラフにデータラベルを付ける手動でグラフを描画し、このプロットごとにラベルを付けようとすると苦労します。ところがVBAを利用するとプロット一つづつに任意の文字列を自由にラベルに付けられます。ラベルを表示する位置も指定できます。 下記はこのコード例です。     With ActiveChart.SeriesCollection(1).Points        For i = 2 To...

View Article


互換性のあるグラフの描き方

グラフを描くVBAは互換性が低く、悪いです。このため複雑なコーディングをすると、自分のPCでは何ら問題なくグラフを描いてくれるのに、別のPCでは動かないことがあります。けっこうあります。症状はいろいろです。例えば、真っ白な枠だけしか描かれない場合や、グラフの折れ線を中途半端にしか描かない場合などがあります。  そこで参考となる情報をまとめました。...

View Article

ファイルopenを楽にする

参照したいExcelファイルが開いてなければ前回置いてあったフォルダーに行く参照したいファイル名(*.xls)を開くと、このファイル名がThisWorkbook.Sheets("初期値").Cells(2, 2)に書き込まれます。またフォルダー名がThisWorkbook.Sheets("初期値").Cells(3,...

View Article

すべてのブックを非表示から表示に変更する

開いているブックのシートをすべて表示させる 用途:VBAがシートを非表示にしたため不要なシートを削除できないことがあります。そこですべてのシートを表示させたい。 Dim sh As Object Dim wb As Object For Each wb In Workbooks  For Each sh In wbook.Sheets   sh.Visible = True  Next Next

View Article

ソートしてから重複行を削除

ソートして、ついでに重複行を削除 用途:ソートと同時に重複行を削除したい場面がときどきあります。このときに使うVBAです。 下記コードの説明: データがA、B列に記入されています。2列だけです。 まずこれらA、B列でソートします。 A列が優先されます。 次に、重複した行を削除した状態で、C、D列にペーストします。    AdvancedFilter     Unique:=True...

View Article


セル内の改行コードを削除

セル内の改行コードを削除Excelでは改行コードが2種類混在している。だから下記のコードのように2行ともに実行する必要がある。 使う場面: セルに記入されている文字列を取得する。このときセル内で改行されていると改行コードが混じってしまう。そこでこの改行コードを削除したい。 .Cells(tempRow, tempCol) = Replace(.Cells(tempRow, tempCol),...

View Article

日時をシリアルから文字列に変換

日時をシリアルから文字列に変換使う場面:Excelで使用される日時は、実態は実数でありシリアルと呼ばれている。MS Office内 でコピーするなら余分なことを考える必要は無い。ところが違うアプリにコピーする場合は一度文字列に変換するのが汎用的な方法である。  strNengappi = Year(.Cells(2,2) & "/" & Month(.Cells(2,2))...

View Article


サブフォルダ名をリストアップする

指定するフォルダのサブフォルダ名をすべてリストアップする用途: 指定したフォルダーとサブフォルダーを含めて特定のファイルを探す 下記コードは、サブフォルダー、さらにこのサブフォルダー、さらに・・・と何層でもどんどん深いサブフォルダーを自動的に探します。 Sub sFolderSearch(ByVal strSFName0 As String, ByVal ShN As String)    Dim...

View Article

周期的に実行するタイマー

周期的に実行するタイマー動作:周期的にマクロ Keisan  を動作させます。     .Cells(2, 2)に60以上の整数を記入すると次回の実行を中止(Exit Sub)する 使い方:.Cells(2, 2)にminuteを表す整数を入れておく。 下記コードをプロシジャー(マクロ) Keisan に記入する。 使う場面:...

View Article


グラフにデータラベルを付ける

グラフにデータラベルを付ける手動でグラフを描画し、このプロットごとにラベルを付けようとすると苦労します。ところがVBAを利用するとプロット一つづつに任意の文字列を自由にラベルに付けられます。ラベルを表示する位置も指定できます。 下記はこのコード例です。     With ActiveChart.SeriesCollection(1).Points        For i = 2 To...

View Article

互換性のあるグラフの描き方

グラフを描くVBAは互換性が低く、悪いです。このため複雑なコーディングをすると、自分のPCでは何ら問題なくグラフを描いてくれるのに、別のPCでは動かないことがあります。けっこうあります。症状はいろいろです。例えば、真っ白な枠だけしか描かれない場合や、グラフの折れ線を中途半端にしか描かない場合などがあります。  そこで参考となる情報をまとめました。...

View Article

Image may be NSFW.
Clik here to view.

Excel VBAのセキュリティー

Excel  VBAのセキュリティーを上げる方法を3つ書く1. パスワードを付けるVB editor で標準モジュールを右クリック注意: password を見破る手順をネットで検索できる。 だから、プロやマニアに見破られることを覚悟しておこう。  2. VBAを使用できる期限を設定する。 期限を越えるとVBAが動かない。次のコードを、プロシジャの最初のほうに埋め込んでおけばいい。Const...

View Article
Browsing all 83 articles
Browse latest View live