タグ

t08sonのブックマーク (231)

  • EXCELマクロのEXE化

    EXEにはならないとおもいますよ。 他の方法をオススメします。 (EXEがいい場合) (1)VisualStuidioのVB等でコーディングをしてEXEにする。 (EXCELを残したい場合) (2)他のエクセルファイルのマクロから実行する。 (EXCELが立ち上がったときに起動したい場合) (3)AUTO_OPENでコーディングする。 などが一般的かと。

    EXCELマクロのEXE化
    t08son
    t08son 2011/10/17
  • VB 配列 - Array, Redim, 動的配列など

    Visual Basic 中学校 > 初級講座 > 第27回 配列 配列は昔からある技術です。新鮮さがないためにまったく注目されませんが、昔から今まで生き延びているということ自体がその重要性を証明しています。今回は地味な説明になりますがじっくりと読んで配列の概要を把握することは有意義です。次回取りあげるコレクションの理解にもつながります。 この回の要約 ・配列を使うと似たような変数をまとめることができる。 ・配列は Dim MyArray(3) As String のように宣言する。 ・配列は添字を変数にしてループをまわせる。 ・配列をコピーするにはCloneメソッドを使う。 ・動的配列を作成すると、Redim Preserveを使うことにより後からサイズを変更できる。 1.はじめに 配列に関する説明をする前に少し今回の方針を書いておきます。 私は普段初級講座を書くに当たっては「VBに

    t08son
    t08son 2011/10/12
    Programming
  • VBA基本(動的配列の勉強)

    配列操作は「苦手」ですか?それとも「初めて」ですか? 「配列操作」はどのようなプログラム言語でも登場するもので、VBA特有のものではありません。 この「配列操作」をマスターすることは、プログラム作成を進める上で重要な要素です。「ループ処理」や「判断・分岐」などと組み合わせて事前に件数が分からない配列を取り扱うのが「動的配列」ですが、 VBAの初心者にとっては一対一でないことで理解しにくいばかりか、動作検証もやりにくいもので嫌われると思いますが、マスターしてしまえばいろいろな処理に駆使することができて「幅」が広がることは間違いありません。 その上、「動的配列」とはその要素数が可変となる配列のことです。 まずは「静的配列」をおさらいしておきます。 ここでのサンプルコードは特に動作効率などを考えてはいないもので、最終的にシートに値を転記させるなら特に配列変数などを用いずに直接セルに書き込めば良い

    t08son
    t08son 2011/10/12
    Programming
  • Office TANAKA - 変数の使い方[部屋数を変えられる動的配列]

    配列は、いわば集合住宅のようなものです。1棟の建物に複数の世帯が同時に住むことが可能です。配列を使用するときは、配列の宣言時に部屋数(要素数)を指定します。 では、プログラムの実行中に、要素が増加するような場合はどうでしょう。あるいは、プログラムを作成する時点では、いくつの要素を格納するかわからないときは、どうしたらいいでしょう。そんなケースで役立つのが動的配列という使い方です。 動的配列は、宣言時に要素数を指定しません。 Sub Sample33() Dim Member() As String End Sub 一般的な配列では「Member(5)」などと要素数を指定するところを、「Member()」と括弧だけを指定します。これで、変数Memeberは配列として使用できます。ただし、この宣言時点では要素数が確定していませんので、実際には使えません。そこで、プログラムのコード中で要素数を再

    t08son
    t08son 2011/10/12
    Programming
  • Findメソッド,Like演算子を使った検索:Excel VBA入門

    Findメソッドでのデータ検索   Topへ データを検索し発見されたセル(Rangeオブジェクトを返します)。無い時はNothingを返します。 expression.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat) 引数 LookIn、LookAt、SearchOrder、および MatchByte の設定は、このメソッドが使われるたびに保存されます。 次にこのメソッドを使うときに、これらの引数の指定を省略すると、保存された設定が使われます。 これらの引数の設定を変更すると、[検索と置換] ダイアログ ボックスに表示される設定が変わります。 また、[検索と置換] ダイアログ ボックスで設定を変更すると、保存されている設定が変わります。 こ

    t08son
    t08son 2011/10/12
    Programming
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    t08son
    t08son 2011/10/12
  • Loading...

    t08son
    t08son 2011/10/12
    Programming
  • 条件を満たす行を削除する:Excel VBA入門

    ループで削除する   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の行を削除します。

    t08son
    t08son 2011/10/12
    Programming
  • excel-vba.net - このウェブサイトは販売用です! - マクロ プログラミング スクリプト エクセル 操作 解説 実用 配列 リソースおよび情報

    t08son
    t08son 2011/10/12
    Programming
  • オートフィルタ(AutoFilter)でのデータ抽出:Excel VBA入門

    オートフィルタ(AutoFilterメソッド)でのデータ抽出   Topへ データリストから必要なデータを表示し、他のデータは非表示にします。 expression.AutoFilter(Field, Criteria1, Operator, Criteria2, VisibleDropDown) Field 必ず指定します。フィルタの対象となるフィールド番号を整数で指定します。 フィールド番号は、リストの左端列が「1」となります。 Criteria1 省略可能。抽出条件となる文字列 ("101" など) を指定します。 "=" と指定すると、空白セルが抽出されます。 "<>" と指定すると空白以外のフィールドが抽出されます。 この引数を省略すると、抽出条件はALLになります。 引数OperatorにxlTop10Itemsが指定されている場合は、引数Criteria1に項目数を指定します

    t08son
    t08son 2011/10/12
    Programming
  • Office TANAKA - Excel VBA Tips[簡単に罫線を引く]

     簡単に罫線を引く Home Excel VBA Excel VBA Tips

    t08son
    t08son 2011/10/12
    Programming
  • Hotmail, Outlook Mail

    t08son
    t08son 2011/10/12
    Programming
  • VBA基本(デバッグ中の操作)

    デバッグ開始(ブレークポイントで停止した状態)以降の操作です。 ブレークポイントやStopステートメントを設定した状態で、ワークシート側に戻って「マクロ」から「一連番号作成2」を実行させると、 最初に当たった「ブレークポイント」でマクロは「中断」し、VBEが表示されます。この時、停止した行が黄色で反転しているのが判ります。 デバッグ中のキー操作の進め方を説明しておきます。 F5キー:複数箇所に「ブレークポイント」が設定してある時は、次の「ブレークポイント」まで進みます。この先「ブレークポイント」に当たらない場合は終了するまで進んでしまいます。 F8キー:「ブレークポイント」から押すたびに1行ずつ進みます。これを「ステップ実行」と呼びます。 Escキー:動作中のマクロを強制的に「中断」にします。押すタイミングの問題でどこで止まるかは特定できません。(マクロの記述でEscキーを無効にできる

    t08son
    t08son 2011/10/12
    Programming
  • クレジットカード現金化の高還元率の優良店を選ぶためには

    クレジットカード現金化の高還元率の優良店を選ぶためには クレジットカード現金化の優良店を選ぶポイントは、換金率やスピードもありますが、そのほかにも見ておきたいポイントもあります。 お金に厳しい人が利用しますので、手数料やキャンペーンの有無、価格交渉ができる業者ということは見ておきたいところです。 それぞれどのような内容なのでしょうか。 手数料が無料であるクレジットカード現金化の業者には、手数料をすべて無料でしてくれるところがあります。 業者によっては、単純に手数料という名目で業者側の利益がとられていたり、振込手数料、事務手数料という名目で少額ながらお金がかかることがあります。 せっかく高い換金率が記載されていても、手数料の分が差し引かれることで、損をしたような気持ちになったり後から気づくこともあります。 これらの手数料は最初から公式ホームページに記載がある場合は了承したうえで申し込みもでき

    t08son
    t08son 2011/10/12
    Programming
  • EXCELマクロで現在のセルの位置(行、列)を変数に入力したい。 - OKWAVE

    マクロで入力済の最初のセルを取得したい マクロはまったくの初心者なのですが、シートに入力されている最初のセルを取得(行と列の番号)したいと思って下記の通りやってみたのですがうまくいきません。 Gyou = 1 Retu = 1 Chek1: Maxcol = Cells(Gyou,Retu).End(xlToRight).Column If MaxCol <> 0 then GoTo Chek2 End If If Gyou < 65536 then Gyou = Gyou + 1 GoTo Chek1 End If Chek2: MsgBox Maxcol としたのですが、入力されているセルはB3、C5だけです。 結果、MsgBox に表示されたのは256でした。 一番最初に入力されているセルはB3なのでMsgBoXには2と表示されると思ったのですがだめでした。 どこがおかしいのか自分で

    EXCELマクロで現在のセルの位置(行、列)を変数に入力したい。 - OKWAVE
    t08son
    t08son 2011/10/12
    Programming
  • Office TANAKA - セルの操作[セルの検索]

    何はなくともFindメソッド 下のようなデータを例に、セルの検索を解説します。 いつものように、まずマクロ記録してみましょう。次のコードは、このリストで「土屋」を検索した操作を記録しました。 Sub Macro1() Cells.Find(What:="土屋", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _ xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _ , MatchByte:=False, SearchFormat:=False).Activate End Sub こりゃまた、ややこしいコードが記録されました。順を追って解説しましょう。ワークシート上でセルを検索するには、Findステートメントを使います。Findステートメントの構文

    t08son
    t08son 2011/10/12
    Programming
  • 404 Page Not Found. - GMOインターネット

    404 Error - Page Not Found. 指定されたページ(URL)は見つかりません GMOインターネットのページへ戻る Copyright (c) 2020 GMO Internet, Inc. All Rights Reserved.

    t08son
    t08son 2011/10/12
    Programming
  • 配列を利用する:Excel VBA入門

    配列の利用   topへ 配列を使うと一つの変数に複数の値を格納できます。 このサイトでプロシージャ名にセル番地を使用しているため、エラーが発生するとの指摘がありました。 セル参照と競合するプロシージャ名は使用しないのが好ましいので rei701 などを rei_701 といった形式(間にアンダーバーを入れました)に書き直しました。 他のページでも同様なことがありますのでご注意ください。 (2019/2/11 に掲示板で kazuさんから指摘を受け、2/12にこのページは書き換えました。ありがとうございました。) 配列の宣言   topへ 配列には宣言時に要素数を固定する(固定長配列)とコードの途中で変化させるもの(動的配列)があります。 固定長配列 Dim A(5) As Integer と宣言すると、要素数はA(0)~A(5)の6要素になります。0から始まります。 ()内の数値をインデ

    t08son
    t08son 2011/10/12
    Programming
  • No.8 ワークシートの最終行、最終列を取得する

    ワークシートの最終セル(最終行、最終列)を取得する… VBAをはじめた人は誰しも最初に引っかかる問題ではありますが、幸いにもインターネットで検索するといくつもの解決法が見つかります。 ところが…動いたり動かなかったり、想定外の動作をすることがあります。そもそもいくつもの解決法があること自体おかしい、いったい当の答えはどれ?この際、白黒はっきりさせようじゃないかというのがこのページの趣旨です。 <S1> ワークシートの最大行、最大列を取得する MaxRow = Rows.Count MaxCol = Columns.Count まず基からですが、ワークシートの最大行、最大列を取得するコードです。もちろんこれ自体は最終行、最終列を取得するものではありません。 Rowsはワークシートの行全体をあらわすオブジェクトで、Columnsは列全体をあらわすオブジェクトです。そのメソッドCountは数

    t08son
    t08son 2011/10/12
    Programming
  • Excel VBA 入門講座 セルの範囲のコピー貼り付け

    'セルB1~D3の範囲をコピー貼り付け Sub CopyCell() Range(Cells(1,2),Cells(3,4)).Copy Destination:=Cells(5,6) End Sub Sub CopyCell() Range("B1:D3").Copy Destination:=Range("F5") End Sub Sub CopyCell() Worksheets("Sheet1").Activate Worksheets("Sheet1").Range(Cells(1,2),Cells(3,4)) _ .Copy Destination:=Worksheets("Sheet1").Cells(5,6) End Sub Sub CopyCell() Worksheets("Sheet1").Activate Worksheets("Sheet1").Range("B1

    t08son
    t08son 2011/10/12
    Programming