2017年3月16日木曜日

VBScript Word文書新規作成

Word文書を新規作成するスクリプト。
ヘッダとフッタに各種情報を入力する。

Set wordApp = CreateObject("Word.Application")
wordApp.Visible = True
Set wordDoc = WordApp.Documents.Add()

wordDoc.ActiveWindow.ActivePane.View.SeekView = 9
wordApp.Selection.Tables.Add wordApp.Selection.Range,2,2

Set objTable = wordApp.Selection.Tables(1)
objTable.Columns(1).Cells.Width = 318
objTable.Columns(2).Cells.Width = 120

objTable.Cell(1,1).Range.Text = "Header1-1"
objTable.Cell(1,2).Range.Text = "Header1-2"
objTable.Cell(2,1).Range.Text = "Header2-1"
objTable.Cell(2,2).Range.Text = "Header2-2"
objTable.Cell(1,2).Range.ParagraphFormat.Alignment = 2
objTable.Cell(2,2).Range.ParagraphFormat.Alignment = 2

Set objSection = wordDoc.Sections(1)
Set objFooters = objSection.Footers(1).PageNumbers
objFooters.Add(1)

wordDoc.ActiveWindow.ActivePane.View.SeekView = 0

文書新規作成なら3行目で終了w
ヘッダに2行2列の表を挿入し、それぞれのセルに情報を入力。
フッタはセンターにページ番号を表示。
 ヘッダとフッタの設定方法が違うのは参照元が違うから・・・。
SeekViewの値は定数。最後に本文に移動させている。

2017年3月15日水曜日

VBScript PowerPointのスライド枚数カウント

PowerPointファイルの総スライド枚数と非表示スライド枚数をカウント。

スライド枚数は、SlidesコレクションのCountプロパティで取得。
非表示かどうかはSlideShowTransition.Hiddenプロパティで取得できるので、それをforで回してカウント。

set objArgs = WScript.Arguments
If objArgs.Count = 0 then
WScript.Quit
End If
 
Set pptApp = CreateObject("PowerPoint.Application")
pptApp.Visible = True
 
Dim targetFile : targetFile = WScript.Arguments(0)
pptApp.Presentations.Open targetFile

With pptApp.ActivePresentation
 h = 0                   '非表示スライド枚数
 cnt = .Slides.Count     'スライド枚数
 
 For i = 1 To cnt
  With  .Slides(i)
   If .SlideShowTransition.Hidden = -1 Then
    h = h + 1
   End If
  End With
 Next
End With

MsgBox "総スライド枚数は" & cnt & "枚" & vbCrLf & "非表示スライドは " & h & "枚"

変数宣言は省略・・・。

Bloggerのコードハイライト その2

先日はhighlight.jsを使ってみたが、今回はSyntaxHighlighterを使ってみる。 SyntaxHighlighter

こちら bloggerでSyntaxHighlighterを表示する方法 などを参考に、下記コードを適用。
前回同様、「テーマ」から「HTMLの編集」を選択し、headタグ内に配置する。


 


使用方法としては、投稿画面HTML編集で、
.....
のようにコードの種類を指定してタグで囲む。
また、bloggerで使用する際は、
bloggerMode を true に設定。
auto-links は false
toolbar は false に設定した。

2017年3月14日火曜日

VBScript D&DでPPTファイルをスライドショー

VBScriptファイルにPowerPointファイルをドラッグ&ドロップするとスライドショーが開始されるスクリプト。
Set objArgs = WScript.Arguments
If objArgs.Count = 0 then
WScript.Quit
End If

Set pptApp = CreateObject("PowerPoint.Application")
pptApp.Visible = True

Dim targetFile : targetFile = WScript.Arguments(0)
set objFso = CreateObject("Scripting.FileSystemObject")

name = objFso.GetBaseName(targetFile)           ' ファイル名(拡張子なし)を取得'
path = objFso.GetParentFolderName(targetFile)   ' ファイルが格納されているフォルダのパスを取得'

pptApp.Presentations.Open targetFile
pptApp.ActivePresentation.SlideShowSettings.Run

Dim objWshShell
Set objWshShell = WScript.CreateObject("WScript.Shell")

objWshShell.AppActivate "PowerPoint"
ついでにファイル名とパスを取得。

2017年3月13日月曜日

hightlihgt.jsでBloggerのコードをハイライト

Bloggerを始めるにあたりコードも書こうかと思っているので、調べたところ,
highlight.jsを使ってみることにした。
ざっくりと設定方法をメモ。

highlight.js

cdnjsから2行をコピーし、テーマのCSSを変更、Usageから3行目をコピーして、以下の3行を作成。
<link href='//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.10.0/styles/agate.min.css' rel='stylesheet'/>
<script src='//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.10.0/highlight.min.js'/>
<script>hljs.initHighlightingOnLoad();</script>

Bloggerの管理画面「テーマ」から「HTMLを編集」を選択し、ヘッダーの一番最後に貼り付ける。
また、モバイル用テーマのカスタマイズ画面で、「デフォルト」→「カスタム」に変更。

使用方法としては、投稿画面のHTML編集で、以下のようにする。
<pre><code class="vbnet">...</code></pre>
コードの種類をclassで指定する。htmlとかvbnetとか。

3/15※この投稿もSyntaxHighlighter向けにタグを更新

VBScript MsgBox関数

VBScriptでダイアログボックスにメッセージを表示
MsgBox(prompt [, buttons, title, helpfile, context])
MsgBox("メッセージ", vbYesNo ,タイトル)
どのボタンが押されたかを示す値を返す。buttons以降の引数は省略可。

返り値を必要としない場合は下記でOK
MsgBox "メッセージ"

Blog開設

Blog開設します。
プログラミングなどの記録やメモとして使っていこうかなと思っています。