土曜日は日本Androidの会横須賀支部の12月定例会です。
無事スピーカー枠が埋まりましたのでこのまま開催することになりました。
参加者はまだまだ募集中ですので、気になる方はATNDにご登録ください(なお、会場でも受付を行っておりますので、登録ナシで来て頂いても構いません)。
ところで、今回から式次第をExcelでするようにしました。スピーカーがらみのイベントの場合それぞれのスピーチ時間を計算して割り当て時間を調整するなど時間の単純計算が多かったのですが、これのおかげでだいぶ楽になりました。
やっていることは、「開始時間+スピーチ時間+休憩時間を次の予定の開始時間とする*1」という非常に単純な計算です。これだけのことですがやはり作業がかなり楽になる そう考えるとこういう「アプリを活用」するってすごく大事だなあ と、痛感します。
オマケに、予定表をTextile記法にしてクリップボードにコピーする機能つき。これをそのままATNDに貼り付けることで式次第が作成出来ます。
Public Sub CopyTextile() Dim Text As String Dim r As Range Dim Indent As Integer Dim IndentChar As String IndentChar = "*************" With ActiveSheet Indent = 1 Text = Text & "* 開場:" & Range("B4").Text & vbCrLf Text = Text & "* 開始:" & Range("B5").Text & vbCrLf Text = Text & vbCrLf For Each r In Range("F1").CurrentRegion.Rows If Trim$(r.Columns(1).Text) <> "" Then If Indent = 1 Then Text = Text & Left$(IndentChar, Indent) & " " ' タイトル Text = Text & r.Columns(1).Text & ":" & r.Columns(2).Text If r.Cells(2, 2).Text = "" Then Indent = 2 ' インデント増やす Text = Text & vbCrLf End If If Indent = 2 Then Text = Text & Left$(IndentChar, Indent) & " " ' スピーカー名 Text = Text & r.Columns(1).Text & ":" & r.Columns(3).Text If r.Columns(4).Value <> "" Then ' Twitter ID Text = Text & "( ""@" & r.Columns(4).Value & """:https://twitter.com/" & r.Columns(4).Value & "/ )" End If ' 「タイトル」 Text = Text & "「" & r.Columns(5).Text & "」" ' (n分) Text = Text & "(" & r.Columns(6).Text If r.Columns(8).Text = "不可" Then Text = Text & "/Ustreamなし" Text = Text & ")" If r.Cells(2, 2).Text <> "" Then Indent = 1 ' インデント減らす Text = Text & vbCrLf End If End If Next r End With Set IE = CreateObject("InternetExplorer.Application") Call IE.Navigate("about:blank") Do While IE.Busy Or IE.Document.ReadyState <> "complete" DoEvents Loop IE.Document.ParentWindow.ClipboardData.ClearData "text" IE.Document.ParentWindow.ClipboardData.SetData "text", Text IE.Quit Set IE = Nothing End Sub
VBAからクリップボードにコピーする場合は、IEオブジェクトを使う必要があります。インストールされているIEバージョンによっては警告ダイアログが表示されますのでご確認ください(他にも方法はあったと思いますがさらっと検索してこれが一番楽そうだったので・・・)。
こういうところで、もっとさらっと、多くの人が簡単にプログラミングできる環境になれば、多分いろいろ変わるだろうなあ・・・。 などと思った次第。
ファイルについては(某首相ではないですが)近いうちにどこかに公開しようと思います。
*1:数式で言えば、[前の行のスピーチ開始時間]+TIME(0,[スピーチ時間]+[休憩時間],0