Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
![[VBA] 1から100の数字を出力する。ただし、12の異なる方法で。 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/fadeb793b19ad0c2e8649e280748e28c905b070b/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fqiita-user-contents.imgix.net%252Fhttps%25253A%25252F%25252Fcdn.qiita.com%25252Fassets%25252Fpublic%25252Farticle-ogp-background-afbab5eb44e0b055cce1258705637a91.png%253Fixlib%253Drb-4.0.0%2526w%253D1200%2526blend64%253DaHR0cHM6Ly9xaWl0YS11c2VyLXByb2ZpbGUtaW1hZ2VzLmltZ2l4Lm5ldC9odHRwcyUzQSUyRiUyRnFpaXRhLWltYWdlLXN0b3JlLnMzLmFtYXpvbmF3cy5jb20lMkYwJTJGNDgwODklMkZwcm9maWxlLWltYWdlcyUyRjE0NzM2OTEyMjM_aXhsaWI9cmItNC4wLjAmYXI9MSUzQTEmZml0PWNyb3AmbWFzaz1lbGxpcHNlJmZtPXBuZzMyJnM9ZjdmZGM3NWUyN2FmMTcwMTQ2MGU1ZTliM2UzNzhhYjQ%2526blend-x%253D120%2526blend-y%253D467%2526blend-w%253D82%2526blend-h%253D82%2526blend-mode%253Dnormal%2526s%253D5aa6e93f036e8bf298d886251460793d%3Fixlib%3Drb-4.0.0%26w%3D1200%26fm%3Djpg%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk2MCZoPTMyNCZ0eHQ9JTVCVkJBJTVEJTIwMSVFMyU4MSU4QiVFMyU4MiU4OTEwMCVFMyU4MSVBRSVFNiU5NSVCMCVFNSVBRCU5NyVFMyU4MiU5MiVFNSU4NyVCQSVFNSU4QSU5QiVFMyU4MSU5OSVFMyU4MiU4QiVFMyU4MCU4MiVFMyU4MSU5RiVFMyU4MSVBMCVFMyU4MSU5NyVFMyU4MCU4MTEyJUUzJTgxJUFFJUU3JTk1JUIwJUUzJTgxJUFBJUUzJTgyJThCJUU2JTk2JUI5JUU2JUIzJTk1JUUzJTgxJUE3JUUzJTgwJTgyJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LXBhZD0wJnM9ZGNkN2I4NTFiYzY3MjViNDliMGU2NjllZWJjZTU4YjQ%26mark-x%3D120%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTgzOCZoPTU4JnR4dD0lNDB4eHh4NyZ0eHQtY29sb3I9JTIzMUUyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1wYWQ9MCZzPTJlYmEzY2Y2ZDYxZTcxZTM1Y2UzNmVkZjlkMjI3ZGMx%26blend-x%3D242%26blend-y%3D480%26blend-w%3D838%26blend-h%3D46%26blend-fit%3Dcrop%26blend-crop%3Dleft%252Cbottom%26blend-mode%3Dnormal%26s%3D231048d1c027d618cbf46917f22b06fe)
さて、今回は前回の続きです。さっそく答えですが・・・ 出席番号の入力で数字以外の文字列とかが入ってきたとき VLookupで検索した結果がない時(出席番号にない番号が入力された時) の2つです。 前回のプログラムをもう一度記載しますと・・・ Option Explicit Sub sample1() On Error GoTo catchErr ' 必要な変数を作成する Dim shussekiNumber As Long ' 出席番号を格納する変数 Dim name As String ' 氏名 Dim sansu As Long ' 算数点数 Dim kokugo As Long ' 国語点数 Dim rika As Long ' 理科点数 Dim syakai As Long ' 社会点数 Dim eigo As Long ' 英語点数 ' 出席番号を入力してもらう(ここで例外発生す
Excelでクロス集計を行うには、ピボットテーブルを使うのが一番簡単なのですが、 ピボットテーブルって結構使いにくかったりしませんか? データを集計したあと、うっかり関係ないところをドラッグしてしまって 表の形式が崩れたり・・・・・・。 クロス集計したデータさえ見れればOK、というときはピボットテーブルを作成した後、 セルに転記して元のピボットテーブルは削除してしまう、というのも手です。 以下は、ピボットテーブルのデータをセル範囲に転記するサンプルです。 サンプルコード Sub ピボットテーブルの内容をセルに転記() Dim strPivotName As String 'ピボットテーブル名 Dim DataArea As Range 'ピボットテーブルのセル範囲 Dim aryData As Variant 'データ範囲から値を取り込む2次元配列 strPivotName =
Applies ToExcel for Microsoft 365 Excel for Microsoft 365 for Mac Excel for the web Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2016 Excel Web App SUMIFS 関数 (数学/三角関数の 1 つ) は、複数の検索条件に一致するすべての引数を合計します。 たとえば、(1) ある 1 つの郵便番号区域に所在しており、(2) 利益が特定の金額を超える、国内の販売店の数を合計するときなどに、SUMIFS 関数を使います。 構文 SUMIFS(合計対象範囲, 条件範囲 1, 条件 1, [条件範囲 2, 条件 2], ...) =SUMIFS(A2:A9,B2:B9,"=ア*",C2:C9,
セルの番地を指定する場合は、通常は「A1形式」がデフォルト値となっている。例えば、A1、A2……、B1、B2……と指定するのが「A1形式」だ。実は、このセル番地の指定方式にはもう1つ、「R1C1参照形式」というものも存在するのだが、ご存じだろうか。 今回は、この「R1C1参照形式」の利点について考えてみよう。 「R1C1参照形式」を使用するには この形式を使用する場合はExcelメニューの[ファイル]→[オプション]と選択し[数式]を選択して、[R1C1参照形式を使用する]にチェックを付ける(図1)。
複数の条件に一致する数値の合計を求めるExcel関数である、SUMIFS(サム・イフス)関数の使い方を解説します。 対応バージョン:365 2021 2019 2016 2013 2010 SUMIFS関数は、複数の条件に一致するセルを検索し、見つかったセルと同じ行(または列)にある、[合計対象範囲]のセルの数値の合計を求めます。 入力方法と引数 SUMIFS(合計対象範囲, 条件範囲1, 条件1, 条件範囲2, 条件2, ...)
ループで削除する Topへ 複数のばらばらな行を削除するときは、ループで後ろの方から削除するのが基本です。 なぜなら、行を削除すると、行位置が1つ前にずれてくるのでループすると都合が悪いのです。 つまり、2行目を削除したら3行目のデータが2行目に移動します。ループのカウンターは2ですから、次は3・・・ずれる前の4行目が次の対象になってしまうからです。 不都合なコードの例 実行前の状態 申込数が 0 の行を削除します。 不都合なコード 行の先頭から削除すると・・・ダメな例です。 Sub test01() Dim i As Long For i = 2 To 10 If Cells(i, 2).Value = 0 Then Range(i & ":" & i).Delete End If Next i End Sub 実行後の状態 行を削除するコードの例 下表の申込数が0の行を削除します。
開くブックをユーザーに選択してもらう場合は、[ファイルを開く]ダイアログボックスを表示するといいでしょう。 Sub Sample1() Dim OpenFileName As String OpenFileName = Application.GetOpenFilename("Microsoft Excelブック,*.xls?") Workbooks.Open OpenFileName End Sub [ファイルを開く]ダイアログボックスを表示するには、ApplicationオブジェクトのGetOpenFilenameメソッドを使います。GetOpenFilenameメソッドによる[ファイルを開く]ダイアログボックスは、ユーザーが選択したファイルのフルパスを返すだけで、自動的には開きません。GetOpenFilenameメソッドの書式は次の通りです。 GetOpenFilename Fil
列をコピーして貼り付ける 列の範囲をコピーして貼り付ける 別シートの列をコピーして貼り付ける 列をコピーして貼り付ける Columns の引数に列番号または列名を指定すると、その列をコピーできます。 列「B」をコピーするには Columns(2).Copy または Columns("B").Copy を入力します。 列「C」に貼り付けるには Columns(3).PasteSpecial(xlPasteAll) または Columns("C").PasteSpecial(xlPasteAll) を入力します。 Columns(2).Copy ' B 列をコピー Columns(3).PasteSpecial (xlPasteAll) ' C 列に貼り付け Columns("B").Copy Columns("C").PasteSpecial (xlPasteAll) Application
この「VBA高速化テクニック」を書いたのは、1995年です。当時はパソコン通信でした。その後、インターネットの時代になり、私も自分のWebサイトを作りました。それがここ「Office TANAKA」です。Webサイトの公開当初には、まだコンテンツの数も少なかったので、パソコン通信時代に書いた「VBA高速化テクニック」をHTML化しました。それ以来、とても多くのExcelユーザーが、この「VBA高速化テクニック」を参考にしていただいています。それはそれで、とても嬉しいことなのですが。ただひとつ、どうも私の考えが"誤って"伝わっていると感じることも多いです。その典型が、本項「画面を止める」です。 よろしいですか?誤解のないようにハッキリ書きます。もし、画面がひんぱんに切り替わるようなマクロだった場合、そのときは、画面を止めるとマクロの速度が速くなりますよという話です。画面がひんぱんに切り替わる
VB 基礎編 (その五) 関数構造(sub、function) private、public、ByVal、ByRef VB の関数構造について説明します。 関数内へは、他のルーチンから goto で飛んできたり、飛びたしたりはできませ ん。関数には、戻り値のあるものと、ないもので宣言の仕方が VB では違います。 昔はサブルーチンなどと呼ばれました。 ■戻り値のないもの sub 関数名 (引数) end sub public sub 関数名 (引数) end sub private sub 関数名 (引数) end sub ■戻り値のあるもの function 関数名 (引数) as 戻り値 end function public function 関数名 (引数) as 戻り値 end function private function 関数名 (引数) as 戻り値 end funct
【サンプルリスト】 '************************************** ' テキストファイルを1行単位に読み込む '************************************** Private Sub Command1_Click() Dim fileNo As Integer Dim buf fileNo = FreeFile 'ファイル番号の取得 Open "TESTFILE.TXT" For Input As #fileNo 'ファイルを読込モードで開く Do Until EOF(fileNo) 'EOFになるまでループ Line Input #fileNo, buf 'ファイルから1行読み込む Debu
ユーザーフォームの作成 topへ [開発]タブの[Visual Basic]をクリックして、VBE(Visual Basic Editor)を起動します。 または、ショートカットキー [Alt]+[F11]でVBEを起動します。 ツールバーの[ユーザーフォームの挿入]→[ユーザーフォーム]を実行します。 UserForm1が挿入されます。 大きさはUserForm1の周囲に表示されるハンドルをドラッグして調整します。 コントロールの配置・追加 topへ ツールボックスで使用するコントロールを選択し、UserForm1へ配置します。 ツールボックスが表示されていない時は [表示]→[ツールボックス]で表示します。 テキストボックスとコマンドボタンを配置します。 ツールボックスからテキストボックスを選択してUserForm1へ配置しました。 ツールボックスからコマンドボタンを選択してU
フォームに関する基本的なTips 今回からフォームに関するTipsを数回に分けて解説していく。フォームに関しては、コントロールの使い方の解説がメインになるため、日常業務のどんな場面で利用できるかについては、あまり触れていない。 その代わり「このコントロールを使用すれば、このようなことができる」という使い方の解説を行うので、「どのような場面でこのコントロールを使えば、業務の効率化が図れるか」は、各読者の皆さんに考えていただきたい。 フォームの作り方とフォームのタイトルの付け方 初めは「フォームの作り方とフォームのタイトルの付け方」について解説する。 まず、VBE(Visual Basic Editor)を起動し、VBEのメニューから[挿入]→[ユーザーフォーム]を選択する。すると、図1のようにフォームが表示される。マウスを右隅下に持っていてドラッグすると、フォームのサイズを自在に変更できる。
クレジットカード現金化の高還元率の優良店を選ぶためには クレジットカード現金化の優良店を選ぶポイントは、換金率やスピードもありますが、そのほかにも見ておきたいポイントもあります。 お金に厳しい人が利用しますので、手数料やキャンペーンの有無、価格交渉ができる業者ということは見ておきたいところです。 それぞれどのような内容なのでしょうか。 手数料が無料であるクレジットカード現金化の業者には、手数料をすべて無料でしてくれるところがあります。 業者によっては、単純に手数料という名目で業者側の利益がとられていたり、振込手数料、事務手数料という名目で少額ながらお金がかかることがあります。 せっかく高い換金率が記載されていても、手数料の分が差し引かれることで、損をしたような気持ちになったり後から気づくこともあります。 これらの手数料は最初から公式ホームページに記載がある場合は了承したうえで申し込みもでき
さて、前項でシート内のセルやセル範囲をRangeオブジェクトに取得して操作することは説明しましたが、今度はシートやブックを越えてRangeオブジェクトを取得する方法を説明します。 前項の「RangeオブジェクトとRangeを返すプロパティ」でシート内のセルやセル範囲を「Rangeオブジェクト」に取得していろいろな形で操作・参照する方法は説明しました。 ですが、 のように、いきなり「Rangeプロパティ」や「Cellsプロパティ」から書き始める方法では、シートやブックを越えた操作・参照はできません。 本章では、すでに「単一セルの転記操作」などでシートを越えた転記を説明してしまっており、何となく理解されているかも知れませんが、ここでは「Rangeオブジェクト」と同様にオブジェクト変数を用意して操作・参照することをやってみます。 では、まず、マクロを書き込んだ自分のブックのSheet3に前項の、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く