読者です 読者をやめる 読者になる 読者になる

Corredor

ウェブ、プログラミングの勉強メモ。

Excel でシートを開いた時に全シート A1 セルにカーソルを合わせ、必ず1シート目を開かせるマクロ

タイトルそのまんま。以下のマクロを「ThisWorkbook」に仕込んでおく。

Private Sub Workbook_Open()
  ' 処理中は画面描画を抑止しておく
  Application.ScreenUpdating = False
  
  ' 全シートのホームポジションを A1 セルに設定する
  Dim ws As Variant
  For Each ws In Workbooks
    If Sheets(ws.Name).Visible = True Then
      Sheets(ws.Name).Select
      Application.Goto Reference:=ActiveWindow.ActiveSheet.Range("A1"), Scroll:=True
      ' Range("A1").Select
    End If
  Next
  
  ' 最初のシートをアクティブにする
  ' 1シート目が非表示になっていなければ「Sheets(1).Activate」の1行で済むが、
  ' 非表示に設定されている場合はエラーになるので、表示されているシートで最初のシートを探す
  For Each ws In Worksheets
    If Sheets(ws.Name).Visible = True Then
      Sheets(ws.Name).Select
      Exit For
    End If
  Next
  
  Application.ScreenUpdating = True
End Sub

かんたんだけどしっかりわかるExcelマクロ・VBA入門

かんたんだけどしっかりわかるExcelマクロ・VBA入門

PowerShell で Diff をやる

PowerShell で Diff をやる方法。Get-Content コマンドでファイルを読み込み、それを Compare-Object というコマンドで比較する。

# 1ファイルずつ変数で定義して比較する
$A = Get-Content "FileA.txt"
$B = Get-Content "FileB.txt"
Compare-Object $A $B

# ワンライナーにする
Compare-Object (Get-Content "FileA.txt") (Get-Content "FileB.txt")

Get-Content には CatCompare-Object には Diff というエイリアスが既に設定されているので、エイリアスを使えば以下の形で書けるようになる。

Diff (Cat "FileA.txt") (Cat "FileB.txt")

Windows PowerShell逆引きハンドブック

Windows PowerShell逆引きハンドブック

iTunes ライブラリでファイルとのリンクが切れた楽曲を抽出する方法

アップル iTunes Card 10000

アップル iTunes Card 10000

昔はそれを抽出するスクリプトとかがあったんだけど、いつからか上手く動かなくなって放置してた。

以下の方法で、iTunes ライブラリ上にある楽曲の中から、実ファイルが見つからず「!」マークが付いてしまうファイルを抽出することができる。

  1. 新規のプレイリストを作成する(名前をプレイリストAとする)
  2. 全てのミュージックファイルをプレイリストAに追加する
  3. 新規のスマートプレイリストを次のルールで作成する
    • 「プレイリストが」「プレイリストA」「ではない」
  4. 上記のスマートプレイリストに!がついたファイルだけリストされてる

プレイリストにはリンク切れのファイルが追加できないようなので、「全てのファイルを入れたはずのプレイリストに入っていない楽曲」は全てリンク切れのファイルとなる。