2013-09-01から1ヶ月間の記事一覧

セル内の文字列の改行操作

VBA

Excelシートにアンケートコメントを格納した場合、 印刷時に最後の行が表示されなくなることがあります。 PC画面上では見えているのに、印刷では見えない。対策としては、「各セルの文字列の最後に改行を入れる」 というのがありますが、非常に煩雑です。 手…

シートを同一形式にそろえる

VBA

こういうのが地味に便利。 Attribute VB_Name = "FormatSheet" Sub シート設定() Const 範囲 = "$A$1:$S$9" ' 罫線を引く With Range(範囲) '上段 With .Borders(xlEdgeTop) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With…

VBAでの単純な変換関数を生成する

こんなプログラムを作って、VBを自分で書く量を減らそうとしている。 def conv(funcName:String, params:List[(String,String)]): String = { val cases = params.map(p => s"""| Case "${p._1}" | result = "${p._2}" """.stripMargin).mkString val functi…

VBの戻り値設定記述を楽にする

VBAを書いていると一番嫌になるのが、関数の戻り値記述。 単純に「return 戻り値」って書けばいいんじゃないのか。 なぜ「関数名 = 戻り値」なのか。 関数名が長くなると、読みにくいことこの上ない。 ということで、Emacs上で入力を楽にする手段を考えた。 …

2つのシートの差分

VBA

こういうものが無いと不安な仕事があるのです。 ' 指定された2つのシートの差分を新しいシートに出力する Sub Diff(ByRef 比較対象1 As Worksheet, ByRef 比較対象2 As Worksheet) Dim 出力 As Worksheet Set 出力 = Worksheets.Add Dim endOfRow As Long en…