Hatena::ブログ(Diary)

yk5656 diary

記事一覧: Linux | Ansible | Swift | Ruby | PHP | JavaScript | MySQL | Git | Vim

2016-01-10(日)

Excelファイルの保存時にCSVファイルも保存してみる

Excel VBAでマクロを書いてみる
の続き

Excelファイルを保存した時、同時にCSVファイルも保存してみる。


VisualBasicを起動し、下記のようにコードを書く。

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

    Dim sheet As Worksheet
    Dim name As String

    ' 各シートをCSV保存する
    For Each sheet In Worksheets
        ' ファイル名
        name = ActiveWorkbook.FullName & "_" & sheet.Name & ".csv"

        ' シートを別のワークブックにコピーする
        sheet.Copy

        ' コピーしたワークブックを上書き保存
        Application.DisplayAlerts = False
        ActiveWorkbook.SaveAs Filename:=name, FileFormat:=xlCSV
        Application.DisplayAlerts = True

        ' コピーしたワークブックを閉じる
        ActiveWorkbook.Close SaveChanges:=False
    Next sheet

End Sub

f:id:yk5656:20160302224413j:image:w550

確認

下記のようなExcelファイルを保存すると、
f:id:yk5656:20160302224412j:image

CSVファイルも保存される。
f:id:yk5656:20160302224411j:image

CSVファイルの中身は下記のような感じで出力される。

a,b,c
1,2,3

2016-01-03(日)

Excelファイルを開いた時/保存した時/閉じた時にVBAマクロを実行してみる

Excel VBAでマクロを書いてみる
の続き

Excelファイルを開いた時や保存した時、閉じたときにVBAマクロを実行してみる。


コードを下記のように書く。

' ファイルを開いたとき実行するマクロ
Private Sub Workbook_Open()
  MsgBox "ファイルを開きました!"
End Sub

' ファイルを保存したとき実行するマクロ
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
  MsgBox "ファイルを保存します!"
End Sub

' ファイルを閉じたときに実行するマクロ
Private Sub Workbook_BeforeClose(Cancel As Boolean)
  MsgBox "ファイルを閉じます!"
End Sub

f:id:yk5656:20160226004629j:image


これで、ファイルを開いたときや保存したとき、終了したときに メッセージが表示される。
f:id:yk5656:20160226004630j:image


ファイルを保存せずに閉じようとした場合

Workbook_BeforeCloseの処理が実行された後、
f:id:yk5656:20160226004631j:image

ファイルを保存するかどうか問われる。
f:id:yk5656:20160226004632j:image

ファイルが保存されている場合のみ処理を実行したい場合は ActiveWorkbook.Savedを見て判断するのが良さそう。
また、CancelにTrueを設定しておくと、この後、Close処理がキャンセルされるみたい。

' ファイルを閉じたときに実行するマクロ
Private Sub Workbook_BeforeClose(Cancel As Boolean)
  If ActiveWorkbook.Saved = True Then
    MsgBox "ファイルを閉じます!"
  Else
    MsgBox "ファイルを保存してください!"
    Cancel = True
  End If
End Sub

2016-01-02(土)

Excel VBAでマクロを書いてみる

Excel VBAでマクロを書いてみる。

※Excelのバージョンは2007です。


Hello world!の表示


Excelファイルを開いて、[開発]-[Visual Basic]を押す。
f:id:yk5656:20160226003003j:image

Visual Basicが起動するので、ThisWorkbookをクリックし、 コードの入力画面を表示する。
f:id:yk5656:20160226003004j:image

下記のコードを入力する。

Public Sub test()
  MsgBox "Hello world!"
End Sub

「Public Sub test()」の行にカーソルを置いて、実行のボタンを押すと、 Hello world!が表示される。
f:id:yk5656:20160226003005j:image


マクロの実行


[開発]-[マクロ]を押して、マクロのダイアログを表示し、 「ThisWorkbook.test」を選択した状態で[実行]を押すと、
f:id:yk5656:20160226003006j:image

Hello world!が表示される。
f:id:yk5656:20160226003007j:image


ボタンを押して実行


[開発]-[挿入]からボタンを挿入する。
f:id:yk5656:20160226003008j:image

[マクロの登録]ダイアログが表示されるので、「ThisWorkbook.test」を選択し、 [OK]ボタンを押すと、ボタンが作成される。
f:id:yk5656:20160226003009j:image

ボタンを押すと、Hello world!が表示される。
f:id:yk5656:20160226003010j:image


マクロの保存


xlsxファイルの場合、マクロが保存できないとのことなので、 [いいえ]を選択し、
f:id:yk5656:20160226003011j:image

「xlsm」を選択して保存する。
f:id:yk5656:20160226003012j:image

保存時に、プライバシーに関する注意が表示される場合は、
f:id:yk5656:20160226003013j:image

Excelのセキュリティオプションで、 「ファイルを保存するときファイルのプロパティから個人情報を削除する」 をオフにすると表示されなくなる。
f:id:yk5656:20160226003014j:image

2014-12-31(水)

日記1年分終了

とりあえず日記1年分終了。
今後は、単発で書いていく。

2014-12-30(火)

来年の目標

来年はもっと働こうと思う。

「週に100時間働けば、誰でも世界トップレベルになれる」。ジョブズを超えた起業家、イーロン・マスクが卒業式で語った5つのコト | TABI LABO
http://tabi-labo.com/100830/elon-musk-speech/

2014-12-29(月)

Nexus5を購入

Nexus5を購入した。

来年はAndroidアプリの開発を覚えたいと思う。

f:id:yk5656:20141227215555j:image:w300

f:id:yk5656:20141227215801j:image:w300

2014-12-26(金)

今年買ってよかったもの - 糸ようじ GUM イージースルーフロッサー

今年買って一番よかったものはこれ。

ガム・イージースルーフロス/フロッサー|製品情報|サンスター
http://jp.sunstar.com/products/brand/gum/gum_19.html

f:id:yk5656:20150622111905j:image:w500

これで、毎朝糸ようじをする習慣ができました。

糸は先端に巻きつけるだけなので簡単に使えます。
f:id:yk5656:20150622111906j:image

カッターが付いているので、糸を切るのにハサミは不要。
f:id:yk5656:20150622111907j:image:w400

写真ではわかりづらいですが、糸がテープ状になっていて、
他の糸ようじとくらべて糸が薄く、歯の隙間にスルッと入ります。
f:id:yk5656:20150622111908j:image:w300

1日1回の使用でだいたい2ヶ月くらい持ちます。
1つ500円くらいなので、年間3000円ほどです。

2014-12-25(木)

PC用のバッグを購入(Refugio Pack 28L)

MacBookPro(15インチ)を持ち歩く用のバッグとして、

Refugio Pack 28L | パタゴニア
http://www.patagonia.com/jp/product/%E3%83%AC%E3%83%95%E3%83%A5%E3%82%B8%E3%82%AA%E3%83%91%E3%83%83%E3%82%AF28L?p=47911-0

を購入した。

f:id:yk5656:20150622103053j:image:w300

後ろにPC用?のスペースがあって、15インチのMacBookProがすっぽり入る。
f:id:yk5656:20150622103225j:image:w300


バッグの重さは680gと軽い。
最初はノースフェイスのホットショットにしようかと思ったが1135gと重く、
iPad Air 1台分(469g)くらいの差があるので、Refugio Packにした。

容量は28Lとなっているが、そこまで入らなそうな感じがする。

2014-11-16(日)

Chromeに拡張機能を入れ直す

新しく買ったMacBookProにアプリを色々インストールする
の続き

Macを買い替えたので、ChromeにExtensionを入れ直す。


基本


Adblock Plus

入れておくだけで広告を非表示にしてくれる。
https://chrome.google.com/webstore/detail/adblock-plus/cfhdojbkjhnklbpkdaibdccddilifddb?hl=ja
f:id:yk5656:20141207113901p:image:w360

AutoPatchWork

入れておくだけで次のページが勝手に表示される。
https://chrome.google.com/webstore/detail/autopatchwork/aeolcjbaammbkgaiagooljfdepnjmkfd?hl=ja
f:id:yk5656:20141207113900p:image:w360

Go Extensions

定番。
https://chrome.google.com/webstore/detail/go-extensions/cdlogpoaigpjcfjfllhjdaniobkjnkmg?hl=ja
f:id:yk5656:20141207113858p:image:w360

1Password

1Passwordを使う場合は必要。
https://chrome.google.com/webstore/detail/1password-password-manage/aomjjhallfgjeglblehebfpbcfeobpgk?hl=ja
f:id:yk5656:20141207114009p:image:w360

Create Link

URLを色々生成。下記のような設定を追加している。

Plain Text(2行)%text%%newline%%url%
はてなダイアリー[%url%:title=%text%]
サムネイル画像http://capture.heartrails.com/200x150/shadow/border?%url%

https://chrome.google.com/webstore/detail/create-link/gcmghdmnkfdbncmnmlkkglmnnhagajbm?hl=ja
f:id:yk5656:20141207114006p:image:w360


Google検索関連


Stylish

Google検索で左側に期間設定を表示するのに使っている。詳細は下記参照。

Google検索で期間指定を選択しやすくする - yk5656 diary
http://d.hatena.ne.jp/yk5656/20140118/1390517887

https://chrome.google.com/webstore/detail/stylish/fjnbnpbmkenffdnngjfgmeleoegfcffe?hl=ja
f:id:yk5656:20141207114151p:image:w360

Add Search Options

Googleの検索オプションに「3ヶ月以内」と「6ヶ月以内」を追加する。地味に便利。
https://chrome.google.com/webstore/detail/add-search-options/kaifgnoibnjldmdkkfogenbfbfgcbiao?hl=ja
f:id:yk5656:20141207114150p:image:w360


ブックマーク関連


はてなブックマーク

ブックマークするのに使用している。
https://chrome.google.com/webstore/detail/%E3%81%AF%E3%81%A6%E3%81%AA%E3%83%96%E3%83%83%E3%82%AF%E3%83%9E%E3%83%BC%E3%82%AF-googlechrome-%E6%8B%A1%E5%BC%B5/dnlfpnhinnjdgmjfpccajboogcjocdla?hl=ja
f:id:yk5656:20141207114148p:image:w360

[ピン] ボタン

Pinterestのピンに使用している。
https://chrome.google.com/webstore/detail/pin-it-button/gpdjojdkbbmdfjfahjcgigfpmkopogic?hl=ja
f:id:yk5656:20141207114147p:image:w360


開発関連


Clear Cache

キャッシュがクリアできる。
https://chrome.google.com/webstore/detail/clear-cache/cppjkneekbjaeellbfkmgnhonkkjfpdn?hl=ja
f:id:yk5656:20141207114410p:image:w360

EditThisCookie

Cookieを編集できる。
https://chrome.google.com/webstore/detail/editthiscookie/fngmhnnpilhplaeedifhccceomclgfbg?hl=ja
f:id:yk5656:20141207114408p:image:w360

JSONView

JSONが見やすくなる。
https://chrome.google.com/webstore/detail/jsonview/chklaanhfefbnpoihckbnefhakgolnmc?hl=ja
f:id:yk5656:20141207114406p:image:w360

PageSpeed Insights

Webサイトのチェックに。
https://chrome.google.com/webstore/detail/pagespeed-insights-by-goo/gplegfbjlmmehdoakndmohflojccocli?hl=ja
f:id:yk5656:20141207114404p:image:w360

2014-11-06(木)

ダミーの郵便番号

アカウントの作成やアンケートの回答などで、郵便番号の入力を求められることがあるが、個人情報を登録したくない場合が時々ある。


そういう時は、下記の郵便番号がシンプルで、仮の郵便番号として良さそうな気がする。

100-0000東京都 千代田区


もしくは、下記の郵便番号もいいかも。

001-0000北海道 札幌市北区
900-0000沖縄県 那覇市