2020-06-01から1ヶ月間の記事一覧

ExcelVBAでファイル追記

Dim fso As FileSystemObject Set fso = New FileSystemObject Dim ts As TextStream Set ts = fso.OpenTextFile("D:\Tips.txt", ForAppending, True, TristateTrue) ' ファイルを UTF-16 で開く Set ts = fso.OpenTextFile("D:\Tips.txt", ForAppending, Tr…

VBAでユーザーフォームの表示を確認

Visible で判断 If (UserForm1.Visible = True) Then '表示されている Else '表示されていない End If ネタ元 https://oshiete.goo.ne.jp/qa/7846020.html

ExcelVBA Application.OnTimeで呼び出す関数に引数渡す

OnTimeで呼び出すプロシージャーに引数を渡しています。 全体をシングルクォーテーション(')で囲み、引数をダブルクォーテーション(")で囲みます。 Sub sample1() Application.OnTime Now + TimeValue("00:00:05"), "'sample2 ""時間ですよ""'" End Sub Sub …

Excelブック単体でExcelVBAを疑似マルチスレッド化

ここ参照 https://www.excel-chunchun.com/entry/2019/03/27/005233 Option Explicit '親部分 Sub Main() Const MAX_PROCESS = 10 Dim Apps As Collection: Set Apps = New Collection Dim i As Long '下準備 Dim App As Excel.Application Dim Wb As Workbo…

Excel関数のMAXを使って、指定列の最大値を取得

MAX値 = Application.WorksheetFunction.Max(Range("A:A")) ネタ元 https://uxmilk.jp/50111

Excelで区切り記号を挿入しながら複数の文字列を連結する TEXTJOIN

TEXTJOIN テキストジョイン (区切り記号, 空の文字列を無視, 文字列1, 文字列2, ..., 文字列252) 例えば別シートのA列にある文字を/で連結したい場合は =TEXTJOIN("/",,シート名!A:A) ネタ元 https://dekiru.net/article/14504/

ExcelVBAでリストボックスで選択された項目名を取得

Private Sub CommandButton1_Click() With ListBox1 If .ListIndex = -1 Then MsgBox "未選択です。" Else MsgBox .List(.ListIndex, 0) End If End With End Sub ネタ元 https://kosapi.com/post-4033/

ExcelVBAでブックの一覧を取得

Sub Sample1() Dim i As Long, tmp As String For i = 1 To Workbooks.Count tmp = tmp & Workbooks(i).Name & vbCrLf Next i MsgBox "現在開いているブックは、" & vbCrLf & tmp & "です" End Subもしくは Sub Sample2() Dim wb As Workbook, tmp As String…

ExcelVBA マクロやアドインにデジタル署名する方法

https://support.microsoft.com/ja-jp/office/%E3%83%9E%E3%82%AF%E3%83%AD-%E3%83%97%E3%83%AD%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%81%AB%E3%83%87%E3%82%B8%E3%82%BF%E3%83%AB%E7%BD%B2%E5%90%8D%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%99%E3%82%8B-956e9…

VB.netでwindowsインストールソフトウェア取得

Dim wkRegKey As Microsoft.Win32.RegistryKey Dim wkKeyName As String Dim strKeyNames() As String Dim strKeyName As String Dim rKey As Microsoft.Win32.RegistryKey Dim displayName As String wkKeyName = “SOFTWARE\Microsoft\Windows\CurrentVersi…

ExcelVBAにてSGN関数で配列み初期化チェックは、環境によっては例外発生するので、使えない

環境によては動きが違うのでおかしいなとおもったら・・・。 On Error GoTo 使うのがいいのかな。 ネタ元 http://execel-util.blogspot.com/2015/12/vbasgn.html

wordpressでパスワード保護欠けたファイルのダウンロード

プラグイン「Download Monitor」を使う。あんまりかっこいい感じにはできないけど。 ネタ元 https://wordpress-dic.com/wordpress-download

ExcelVBAで任意の名前のシートがなければ作成する

'任意のワークシート名を指定 Dim trgtShName As String trgtShName = "新規追加" 'シートが開いているかどうかのフラグを定義する Dim flg As Boolean 'ワークシートオブジェクトを定義する Dim ws As Worksheet 'マクロ実行ブックの全シートにループ処理を…

ExcelVBAでシートのクリア

Worksheets("Sheet1").Cells.Clear ネタ元 http://www.koikikukan.com/archives/2016/10/04-003333.php

ExcelVBAでCSVファイルを読み込むマクロ

こちらで公開しているシートのReadCSVをまるっと頂きましょう。 https://www.excelspeedup.com/readcsv/

最速C# 7.x

C#

ためになる https://www.slideshare.net/yamamotoreki/c-7x

ExcelVBAで指定のシートにフォームボタンを追加する

Dim addTop Dim addLeft addTop = Range("A1").Top addLeft = Range("A1").Left Dim btn Set btn = Workbooks("hogeシート.xlsm").Sheets("hogehoge").Buttons.Add(addLeft + 19.5, addTop, 133.5, 37.5) btn.Characters.Text = "ボタン名" btn.OnAction = "…

ExcelVBAで文字などの簡単な入力ダイアログ

Sub Sample1() Dim buf As String buf = InputBox("名前を入力してください") Range("A1") = buf End Sub ネタ元 http://officetanaka.net/excel/vba/tips/tips37.htm

ExcelVBAでマクロ実装させずにワークシート開く方法

Workbook_Open()にやらかしマクロ書いちゃったときなどに使います。 Excelを起動する。 メニューの「開く」を選択。 「ファイルを開く」ダイアログで、開きたいファイルをクリック。 Shiftを押しながら「開く」をクリック。 ネタ元 https://stabucky.com/wp/…

Excelvbaでクリックしたボタンの座標取得

MsgBox ActiveSheet.Shapes(Application.Caller).Left MsgBox ActiveSheet.Shapes(Application.Caller).Top MsgBox ActiveSheet.Shapes(Application.Caller).Width MsgBox ActiveSheet.Shapes(Application.Caller).Height $A$2 とかの書式ならこちら MsgBox …

C#でstringの中の最後尾の文字列を調べる

C#

EndsWith()を使う if(!str.EndsWith("\r\n")) str+="\r\n"; ネタ元 http://www.woodensoldier.info/computer/csharptips/38.htm

C#で文字列連結するならStringBuilderが高速

C#

サイズわかってるならStringBuilderのCapacityを指定しておくと高速。 ネタ元 https://qiita.com/TD12734/items/fad83dddb8f0452b7d38 https://dobon.net/vb/dotnet/string/stringbuilder.html

ExcelVBAでutf-8指定でファイル読み込みする

ADO(ActiveX Data Objects) 使う Sub Sample1() Dim buf As String, Target As String Target = "D:\Work\UTF-8のテキスト.txt" With CreateObject("ADODB.Stream") .Charset = "UTF-8" .Open .LoadFromFile Target buf = .ReadText .Close MsgBox buf End W…

ExcelVBAでRange()からRow Column取得してCells()によるアクセスする方法

Debug.Print Range("A1").Row & "," & Range("A1").Column ネタ元 https://website-note.net/vba/change-range-to-cells/

ExcelVBAでPasteSpecialするときに、描画停止してるとエラーになる

Range("E1").PasteSpecialなどするときは '描画停止 Application.ScreenUpdating = Falseはしないようにしましょう。