mugaxのなんでも情報局

いろんな分野について発信していきます。

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

セルのコピーあれこれ

■セルのコピーあれこれ '------------------------------------------------ 'セルのコピーに関してDestinationの有無による違い '------------------------------------------------ 'Destinationを指定しない場合 ' クリップボードにコピーされる ' コピー…

配列の中身をランダムに並べ替える

Function ShuffleArr(targetArr() As Variant) As Variant() Dim tmpArr As Variant Dim rndNum As Long Dim i As Long Dim buf As Variant '元の配列を変更しないように別の配列に代入して操作 tmpArr = targetArr For i = LBound(tmpArr) To UBound(tmpArr…

チェスボードを作る。VBAとワークシート関数で。

■チェスボードを作る Sub MakeChessBoard(boardArea As Range, myColor As Long) Dim r As Long Dim c As Long For r = 1 To boardArea.Rows.Count For c = 1 To boardArea.Columns.Count If (r + c) Mod 2 = 1 Then boardArea.Cells(r, c).Interior.Color =…

ワークシート関数によるカレンダーの作り方

図1 カレンダー(図1)の作り方 年月を入力すると、日付、曜日、土日塗りつぶしが自動更新されるカレンダーの作り方です。 1. 年と月の入力欄を作る 年(B2)と月(C2)に、不適切な入力を防ぐために入力規則を設定します 年の入力欄(B2)を選択して、データ→デー…

入試問題を解く

■入試問題を解く '----------------------------------------------------------------------------- '1から999までの整数のうちで、次の整数はいくつあるか? '(1) 各位の数の和が7となる整数 '(2) 各位の数の和が7の倍数となる整数 '---------------------…

ランダムな文字列作成

■ランダムな文字列作成 '--------------------------------------------- 'ランダムな文字列作成 ' hasNumがTrueの場合 : A-Z,a-z,0-9 ' Falseの場合 : A-Z,a-zのみ '--------------------------------------------- Function GetRandStr(Optional length As…

全シート名を取得、全シート名を変更

■全シート名を取得 Sub GetAllSheetsName() Dim i As Long For i = 1 To Worksheets.Count Debug.Print Worksheets(i).Name Next End Sub ■全シート名を変更(特定の文字列+連番) Sub ChangeAllSheetsName(Changed As String) Dim i As Long For i = 1 To Wor…

フォルダ内の任意のファイルの名前を全て取得

■フォルダ内の任意のファイルの名前を全て取得 Sub getAllFileName() Dim fName As String '.xlsmで終わるファイルを検索(返り値はファイル名のみ。パスは含まない) fName = Dir("C:\Users\AAAAA\BBBBBB\*.xlsm") Do While (fName <> "") Debug.Print fName …

min以上max以下の乱数を取得

■min以上max以下の乱数を取得 Function RndBetween(min As Long, max As Long) As Long Randomize RndBetween = Int((max - min + 1) * Rnd + min) End Function ■min以上max以下の乱数を取得(ワークシート関数使用) Function RndBetween(min As Long, max A…

選択範囲を1行おきに塗る関数

■選択範囲に1行おきに色を塗る Sub ZebraStriped() Dim i as long For i = 1 To Selection.Rows.Count Step 2 Selection.Rows(i).Interior.Color = RGB(0, 255, 0) Next End Sub ■選択範囲を1行おきに選択するのみ(色は自分で選ぶ) Sub ZebraSelect() Dim my…