1 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:42:39.57 ID:K1uuwFLt.net] ExcelのVBAに関する質問スレです コード書き込みや作成依頼もOK ※前スレ Excel VBA 質問スレ Part56 mevius.5ch.net/test/read.cgi/tech/1534976724/
799 名前:デフォルトの名無しさん mailto:sage [2018/10/26(金) 10:45:47.31 ID:REmVcuAB.net] 解凍・圧縮用のdllであるunlha32やらunzip32なんかもちゃんと用意されていて、vbaから利用できるしな
800 名前:デフォルトの名無しさん mailto:sage [2018/10/26(金) 12:00:29.68 ID:FHu9JUdN.net] >>763 え、ないでしょ? あるんだっけ?
801 名前:デフォルトの名無しさん mailto:sage [2018/10/26(金) 13:4
] [ここ壊れてます]
802 名前:1:39.22 ID:FXq8Nzbn.net mailto: 「自分だけの環境」の話だろw [] [ここ壊れてます]
803 名前:デフォルトの名無しさん mailto:sage [2018/10/26(金) 20:18:33.42 ID:7acxRmxq.net] それ言い出すとシェル呼び出してそこから外部プログラムの実行でなんでもできるわな
804 名前:デフォルトの名無しさん mailto:sage [2018/10/27(土) 00:10:36.89 ID:64tA3ZzD.net] それだと最早Excel VBAを起点にする意味がないんだよなぁ
805 名前:デフォルトの名無しさん mailto:sage [2018/10/27(土) 09:39:45.10 ID:z1SsyyeN.net] 戻り値主体の関数的な使い方がしにくいのでは?
806 名前:デフォルトの名無しさん [2018/10/27(土) 12:17:32.77 ID:nqyfF+/M.net] なんで何でもできたら悪いみたいな言い方やねん
807 名前:デフォルトの名無しさん mailto:sage [2018/10/27(土) 15:13:38.94 ID:gKMunlkh.net] 彼女の作り方がわからない
808 名前:デフォルトの名無しさん mailto:sage [2018/10/27(土) 17:08:31.91 ID:arx5iKp2.net] 事務の女性をお得意のVBAで助けてやるんだ
809 名前:デフォルトの名無しさん mailto:sage [2018/10/27(土) 20:08:09.98 ID:9XazvJsa.net] 助けてあげても一瞬感謝されるだけで何も起こらないぞ 下手すると感謝すらされない
810 名前:デフォルトの名無しさん mailto:sage [2018/10/27(土) 21:27:07.52 ID:EQmtOnig.net] >>772 そう、気づかないんだよな・・・
811 名前:デフォルトの名無しさん mailto:sage [2018/10/27(土) 23:46:47.86 ID:bYiR1b6u.net] 助けても後出しで本当はこうしたいのにできてないだの文句言われる
812 名前:デフォルトの名無しさん [2018/10/28(日) 06:55:12.79 ID:xmv6f/Y+.net] 全然助けれとらんやんwプロさんあわれwww
813 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 09:41:11.55 ID:U+AZbxUR.net] ちょっとしたことでいいからピンポイントで教えてあげる。 食いついてこなかったら諦める。
814 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 10:40:54.72 ID:o08My3f7.net] ExcelVBAで、女にもてるようになる方法スレ w
815 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 11:02:16.86 ID:eT9vyE0h.net] ランダムアクセスファイルでデータ管理をしています。 いままで動いていたものが GET PUT で 「レコード長が一致しない」となります。 一部こんな感じです。 Const MONTH_SIZE As Long = 60 Type M_Rec S_code As Long Stock As Long byCode As String * 8 M_id_Cre(MONTH_SIZE) As Integer End Type Public S_MAIN_REC As M_Rec Open FileName For Random As #SmainNO Len = Len(S_MAIN_REC) Get #SmainNO, indexNo, S_MAIN_REC この標準モジュールを破棄して同じモジュールをインポートすると 正常に動きますがワークブックを保存して再起動し同じ処理をすると エラーになります。 Public S_MAIN_REC As M_Rec の 記述場所を移動させると正常に 動きましたがモジュール内に新規プロシージャを追加したらまた エラーが出るようになりました。 モジュールが壊れていると思い新しく作成しても同じでした。 ご意見お願いします。 現在ユーザ定義 の M_id_Cre(MONTH_SIZE) As Integer の配列を 61に変更し正常動作中です。
816 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 11:41:59.08 ID:THaxkhg7.net] さすがに時代遅れにも程がある そんな黴の生えたゴミカスは今すぐ捨てて普通にワークシートで管理するかDBにしろ
817 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 15:41:48.78 ID:9UvKiQNH.net] 言い過ぎ。しかしランダムアクセスファイルとは懐かしい
818 名前:776 mailto:sage [2018/10/28(日) 16:59:37.36 ID:eT9vyE0h.net] すみません もともとはワークシートで管理していたのですがファイルのほうが 都合が良いので変更しました。
819 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 17:01:07.70 ID:ISWax1Kh.net] で、今まさにその前提が間違っていたことが判明したんだろ? 直ちに戻しなさい
820 名前:デフォルトの名無しさん [2018/10/28(日) 20:08:41.54 ID:4pkRNiip.net] 馬鹿の特徴 動きません エラーが起きます 決して具体的なエラーメッセージを書かない
821 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 21:40:15.40 ID:uzLWPyey.net] バカ
822 名前:フ特徴 書いてあるエラーメッセージを理解できずに自爆 w > GET PUT で 「レコード長が一致しない」となります。 [] [ここ壊れてます]
823 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 23:30:32.75 ID:9UvKiQNH.net] ここの住人回答者は居丈高だからteratailにでも質問なさい。 ただコード具体例とエラー詳細はいずれにせよ求められるけど
824 名前:デフォルトの名無しさん [2018/10/29(月) 00:30:55.69 ID:4Xu2UR6y.net] >>784 馬鹿は表面的なことしか見えない
825 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 04:51:38.42 ID:xpZzwKyb.net] >>786 表面的なことすら見えてないバカの自爆乙 w
826 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 09:45:00.02 ID:uMisuGYK.net] 初心者には環境とかエラーの詳細な条件を明記することへの心理的な障壁があります その心理の正体は一体何でしょう?
827 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 10:53:33.28 ID:VYDzXbvz.net] 慣れの問題かと ・自信ないのでミス指摘されたくないなどの自尊心問題 ・コンプライアンスリスクとの取り違え ・個人情報リスクとの取り違え
828 名前:776 mailto:sage [2018/10/29(月) 11:24:48.23 ID:aqnyYxuj.net] 少し荒れてしまいましたね、すみません エラーは書いてあるとおり「レコード長が一致しない」 Openステートメントで指定された長さと異なるということなのですが レコード変数やOpen Get Putのプロシージャなど変更せずに このエラーが発生しました。多分VBAのバグだと思うのですが 詳しい方に教えていただきたく思いまして書き込みしました。 タイミングが悪かったですね。
829 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 11:33:02.57 ID:f3zS/Ojj.net] 確かにタイミングが悪かったな 20年遅いわ 今回お前が苦労して解決しても後で他の誰にも分からないんだぞ? そんなもん押し付けられる方の身にもなってみろ
830 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 11:45:30.06 ID:uMisuGYK.net] 「VBA ファイル読み書き」で検索してOpen コマンドとかが出てくるものかねえ
831 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 11:48:12.61 ID:VYDzXbvz.net] ?出てくるぞ?あたりまえだろ
832 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 14:25:31.25 ID:gsxtgvfG.net] >多分VBAのバグだと思うのですが まぁ言語の方に責任を押し付けたくなるのは判るがなw
833 名前:デフォルトの名無しさん mailto:age [2018/10/29(月) 15:23:05.64 ID:P7hlr/PN.net] 何わろとんねん
834 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 16:45:28.78 ID:gkooAort.net] >>790 バイナリエディターでレコードファイルを確認するのと、テスト環境作ってレコードを減らしても発生するかみる
835 名前:デフォルトの名無しさん mailto:age [2018/10/29(月) 18:06:20.39 ID:P7hlr/PN.net] >>796 頼む
836 名前:776 mailto:sage [2018/10/29(月) 19:56:48.16 ID:aqnyYxuj.net] >>796 エラーになる状態ですと、新規にファイルを作成しても1レコード目でエラーとなりますので ファイルがおかしいとは思えません。ユーザー定義のレコードサイズ、モジュール変数の メモリ設定があやしいと思うのですが。
837 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 23:29:14.96 ID:cO8xV5Br.net] 素人質問ですみません エクセルで消費税を算出したいのですが、一つのセル内で完結できないでしょうか ググっても税抜き価格と税込み価格の、二つのセルを使うものばかりでして
838 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 23:52:48.29 ID:g/o5tBon.net] >>793 まさかな、と思ってぐぐってみたら本当だった。 しかもqiitaの新着記事にもそんなのあるし。 なぜなのか?
839 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 00:03:25.38 ID:oqjX6NBU.net] >>798 最小条件での動作確認しないなら俺はなにもいわない
840 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 00:10:19.82 ID:iPJEDoz1.net] >>799 それVBAの質問なの?そもそも
841 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 12:34:46.04 ID:MiaEkZFI.net] >>799 税抜き価格を入力したら、そのセルの数値を自動的に1.08倍するマクロ Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False Target.Value = Int(Target.Value * 1.08) Application.EnableEvents = True End Sub
842 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 13:48:04.01 ID:Zs94iK
] [ここ壊れてます]
843 名前:wt.net mailto: 際限なく1.08倍していきます [] [ここ壊れてます]
844 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 17:38:32.50 ID:D9hLQP5r.net] 消費税は際限なく上がる
845 名前:デフォルトの名無しさん [2018/10/30(火) 18:40:58.23 ID:bEYZFX0T.net] くだらない質問だと思いますが、会社のバーコードで在庫 納品書 委託 委託精算 等 連携したものを作成する場合は初心者でどのくらい作成期間がかかるものでしょうか?
846 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 18:50:13.80 ID:aaXb5tV1.net] 100年くらい見積もっておけば間違いない
847 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 18:53:25.90 ID:E+8/TrgC.net] 少なくとも、SIerに委託するより>>806 の給料の方が遥かに高くつくくらいの期間は間違いなくかかるよ
848 名前:デフォルトの名無しさん [2018/10/30(火) 19:15:41.01 ID:bEYZFX0T.net] >>808 因みに幾らくらいかかるものでしょうか?
849 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 19:49:51.22 ID:wPm+kt3H.net] >>809 仕様がわからないので見積もれません 4000億円ぐらいみとけば間違いない
850 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 20:01:06.67 ID:UXC/r+zj.net] テーブル(lo)を列毎に配列で取り出して処理したいのですが、キーを列名、値に列範囲を格納すればforループで代入できて簡潔なのでDictionaryを使ってみようと思っています。 Dim dic As Dictionary: Set dic = New Dictionary Dim lc As ListColumn For Each lc In lo.ListColumns _dic.add lc.name, WorksheetFunction.Transpose(lc.DataBodyRange.value) next lc 以上で作成した「Dictionaryの値」に格納した「配列の値」に代入が出来ません。 例えば debug.print dic(見出しA)(1) '「ピカチュウ」が表示 dic(見出しA)(1) = "ライチュウ" debug.print dic(見出しA)(1) '「ピカチュウ」が表示 となってしまいます。しかし以下の様に配列を格納し直すと反映されます。 debug.print dic(見出しA)(1) '「ピカチュウ」が表示 dic(見出しA) = Array("","ライチュウ", dic(見出しA)(2),・・・ debug.print dic(見出しA)(1) '「ライチュウ」が表示 修正があるたびに配列を代入し直すのは面倒なので出来れば値を直接書き換えたいのですが、どうすればいいのでしょうか。
851 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 20:25:09.48 ID:4tQqoM/4.net] >>811 そもそもlo.ListColumns(lc.Name).Range.Item(Index).Value でテーブル内のセル値のセッターにアクセス出来るので、わざわざそんなことをやる必要がないと思う 仕様上ListObjectは列名重複が許されないし、ListColumnsコレクション自体がDictionaryと殆ど等価のハッシュテーブルになる
852 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 20:50:28.74 ID:UXC/r+zj.net] ありがとうございます 現在はそうしているのですが(元々それがやりたくて全部テーブルに置き換えたのですが) 値を取り出すときに毎回ListColumns(lc.Name).DataBodyRange(Index).Valueと長々書く為コードが読みづらいのと、配列にすればちょっと速度改善が見込めるかなと思って試していました。
853 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 13:51:41.06 ID:OKzw5dxl.net] Dictionaryの代替以外の回答もお待ちしてます。 あと追加で質問なのですが、先ほどのTransposeの様にワークシート関数を利用するなら配列ではなくセル範囲の方が速いという記事を見つけました。 どういう原因でそうなるのでしょうか?
854 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 17:54:26.42 ID:Dz4usJiG.net] 一般的にユーザーによる同等のVBAコードよりワークシート関数の方が速い C#とかよりC++ネイティブの方が数〜倍速くなるのと同じ
855 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 18:27:27.91 ID:b54HYVzl.net] >>814 組込みの機能はアプリケーション内でリソース管理が最適化されてるのでね VBAで
856 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 18:30:36.22 ID:b54HYVzl.net] >>814 組込みの機能はアプリケーション内でリソース管理が最適化されてるのでね VBAでやると不要な大きさのバッファを確保してたりして無駄が多くなる
857 名前:デフォルトの名無しさん mailto:sage [2018/11/01(木) 07:11:29.46 ID:hEMz+97b.net] シートにボタン配置して押したら、オートシェイプの直線を引ける段階までって出来る?いわゆるショートカットキー的な感じの。 実際に直線を引いちゃうのは山ほどネットに転がってるけど、引くのは任意でやりたい。
858 名前:デフォルトの名無しさん mailto:sage [2018/11/01(木) 10:46:24.36 ID:Uh6mdsZK.net] >>818 出来ない。
859 名前:デフォルトの名無しさん [2018/11/01(木) 18:36:00.35 ID:Nl3jEz8g.net] Excelのセルに入ってるデータを使ってOutlookでメールをVBAで書きたいのですが それぞれの行やある文字についてフォントや色などで装飾したいんです。 そんなことはできますか? なんかできなそうなんですが。 でもこれをしないとものすごく不便なのです。 うまくいけば残業せずに遊びながら居残りしてお金だけはたくさんもらえるのですが・・・
860 名前:デフォルトの名無しさん mailto:sage [2018/11/01(木) 18:51:35.86 ID:4wthv7uM.net] >>818 できるよ。
861 名前:デフォルトの名無しさん [2018/11/01(木) 19:09:06.19 ID:Nl3jEz8g.net] >>818 サルでもできるよw 単にボタンにマクロの登録をすればいいだけ。
862 名前:デフォルトの名無しさん mailto:sage [2018/11/01(木) 19:13:58.18 ID:9hAL4zo4.net] >>822 う〜ん... 俺もできるとは思うけどそんなに簡単か? 何を登録するんだ?
863 名前:デフォルトの名無しさん [2018/11/01(木) 19:18:10.81 ID:Nl3jEz8g.net] >>823 ボタンを挿入して右クリックしてマクロの登録を選び実行させたいプロシージャを選ぶだけ
864 名前:デフォルトの名無しさん mailto:sage [2018/11/01(木) 19:22:20.09 ID:9hAL4zo4.net] >>824 直線を引く直前の状態にするプロシージャって簡単に書けるのかい?
865 名前:デフォルトの名無しさん mailto:sage [2018/11/01(木) 19:24:41.75 ID:9hAL4zo4.net] >>820 やったこと無いけどHTMLメールにして本文をHTMLにすれば良いんじゃない? あとはテキストメール作成と同じじゃないの?
866 名前:デフォルトの名無しさん mailto:sage [2018/11/01(木) 19:26:55.17 ID:1Z/ZXoar.net] >>820 HTML書けるならこの辺りを見ればわかるだろ https://docs.microsoft.com/en-us/office/vba/api/outlook.mailitem.bodyformat
867 名前:デフォルトの名無しさん [2018/11/01(木) 19:30:44.64 ID:Nl3jEz8g.net] >>826 じゃ具体的なコードはどうなるの? 例えば、「こんにちは、うんちと申します。」の文で、うんちを太字で茶色にしたい場合。
868 名前:デフォルトの名無しさん [2018/11/01(木) 19:33:37.59 ID:Nl3jEz8g.net] >>827 こんにちは、<B><font color=brown>うんち</font></B>と申します。 ?
869 名前:デフォルトの名無しさん mailto:sage [2018/11/01(木) 23:23:17.57 ID:EZF4jYAF.net] >>822 できないから聞いたんだが?
870 名前:デフォルトの名無しさん mailto:sage [2018/11/01(木) 23:35:45.63 ID:NdKTTFxC.net] できるって言ってる人は質問をよく理解してないんだと思う
871 名前:デフォルトの名無しさん [2018/11/01(木) 23:45:47.15 ID:BwvtJmQs.net] この板は日本語が読めない低学歴知恵遅れが多いのはあってる えてして書いてある要件とまったく違うもんをあげてくるよくいる軽い池沼入ってるのと似てる
872 名前:デフォルトの名無しさん mailto:sage [2018/11/01(木) 23:59:15.18 ID:8GU0aFYB.net] お互い様
873 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 00:46:25.82 ID:iMC20ra8.net] >>16 Excelのマクロの記録はVBAコードで表現できないものは原則できない 操作自体の記録再生ができるUWSCとかRPAといったツールを呼び出せばできる
874 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 06:47:30.99 ID:Cpir13NG.net] Sendkeysで無理くりリボンメニューの直線を選択するコードを作ってショートカット割り当てる位しかないと思う
875 名前:デフォルトの名無しさん [2018/11/02(金) 07:54:22.50 ID:EKeu1zQN.net] >>830 あなたはサル以下ということだ。ウイッキー。
876 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 10:00:17.95 ID:IpqW30ow.net] >>818 あれ? まだコードあがってないですね。 じゃぁExcel2010用ですが、サンプルを、、、 目的に合わせてShapeIDを変えてください。 Sub CreateShape() Dim ShpID As Long ' ShapetypeID Dim iShpCnt As Long ' Shape Cou
877 名前:nt (追加待ち判定) Dim SHP As Variant ' Loop用Shape ' Create Shape '-------------------------------- ShpID = 409 'Freeformの場合 ' ShpID = 1119 'Ovalの場合 ' ShpID = 1042 'LineConnectorの場合 iShpCnt = ActiveSheet.Shapes.Count Application.CommandBars.FindControl(ID:=ShpID).Execute Do DoEvents Loop While iShpCnt = ActiveSheet.Shapes.Count End Sub 描かずに連続で押すと処理が入れ子になってしまうのが 難点ですが、、、 [] [ここ壊れてます]
878 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 10:56:22.32 ID:N4XXlewl.net] >>837 なるほど
879 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 12:39:25.94 ID:ouVO3wBC.net] >>837 できた!ありがとうございます!
880 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 12:40:29.21 ID:m6WMCehM.net] >>837 これで出来たんだね。 コード書ける環境じゃ無いから試せなかったけど、この方法かUIAutomation使うかどちらかかなあと思ってた。 CommandBarControl.ExecuteでもShapeの場合トグルっぱい動作だから思う状態になるか自信が無かった。
881 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 12:44:20.35 ID:m6WMCehM.net] あれ、Do〜Loopの処理は気付かんかったなあ。 自分が作成してたら動かんかったと結論出してたかも。
882 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 12:50:59.79 ID:IpqW30ow.net] >>841 StackOverFlowかどっかのサイトの受け売りなんですけどね。 どこからもらったのか忘れた、、、
883 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 12:57:46.92 ID:IpqW30ow.net] >>837 あ、後続の処理用の変数消し忘れてた。 Dim SHP の行は不要です。
884 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 17:17:11.16 ID:ouVO3wBC.net] ちなみになんだけどDoLoopはなんの為にあるんですかね? なくても同じ動きすんだけど。
885 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 17:57:06.50 ID:oqBXcCoW.net] 書き終わってShapeオブジェクトが作成されるまで、次の処理を待機 元々書いた後に何か処理をするプログラムの一部だったんだと思う 今回はCommandBarControlのコマンドが実行された時点で仕事は終わってるから要らないかと
886 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 18:54:32.40 ID:m6WMCehM.net] >>845 ループ無くても動くんなら思った通りだった。 違いが有るとすれば自分はFindControlは使わず、コントロールの指定もIDじゃなくて名前使う所。 名前はFor Each使ってCommandBarを列挙して名前をDebug.Print、そのCommandBarに対してFor EachでCommandBarControlを列挙して名前をDebug.Printなどで調べる。
887 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 19:49:18.45 ID:IpqW30ow.net] >>844 ん? Do - Loop 部分ないとちゃんと動かんよ? VBEから実行してない? ボタンに割り付けると、ボタン押した瞬間に十時カーソル消えるはず。 Excel2010より新しいVersionは動きが違うの?
888 名前:デフォルトの名無しさん mailto:sage [2018/11/02(金) 20:57:01.00 ID:/dr4nYVn.net] >>847 ボタン押したらクリックしたら線がかけるようになったよ。 2003でも動いたし、2007でも動いた。
889 名前:デフォルトの名無しさん mailto:sage [2018/11/03(土) 00:21:42.99 ID:N3tWJlln.net] Excel2010でも試したけど、ループのないプロシージャで描けたよ 勿論ボタンのクリックイベントから
890 名前:デフォルトの名無しさん mailto:sage [2018/11/03(土) 00:44:19.57 ID:N3tWJlln.net] フォームコントロールに割り当てると描けないっぽい ActiveXコントロールのイベントで呼べば描けるが フォームコントロールって何のために有るんだろう・・・
891 名前:デフォルトの名無しさん [2018/11/03(土) 04:34:07.93 ID:/0NNzwPk.net] 任意のセルをコピーして所定の場所にペーストするマクロを作りたいです。 セルをコピーした状態からマクロ記録を取って、ペーストするだけのマクロを作ったのですがうまくいきません。 教えてください!
892 名前:デフォルトの名無しさん mailto:sage [2018/11/03(土) 06:28:54.02 ID:5ShzkuEH.net] >>850 VBAで作るフォームと処理を共有できる、とか?
893 名前:デフォルトの名無しさん mailto:sage [2018/11/03(土) 06:31:10.97 ID:5ShzkuEH.net] >>851 マクロの記録だと余計な処理が追加されるから、それを削るだけでうまくいくはず まずは記録したマクロをここに書いてみ ただしCtrlを押しながら複数のセルをコピーした場合はかなり難しくなる
894 名前:デフォルトの名無しさん mailto:sage [2018/11/03(土) 06:39:13.96 ID:IAxxklmh.net] >>850 ああ、なるほど。 確かにフォームボタン使ってた。 そのために余計な苦労をしたってわけか。 情報Thx!
895 名前:デフォルトの名無しさん [2018/11/03(土) 11:31:29.48 ID:/0NNzwPk.net] >>853 Sub Macro5() ' ' Macro5 Macro ' ' Range("AH11").Select ActiveSheet.Paste Application.CutCopyMode = False End Sub こんな感じです。これはセル1つ選択です。(最終的には複数選択してシート間でコピペする予定です)
896 名前:デフォルトの名無しさん mailto:sage [2018/11/03(土) 11:43:19.50 ID:S6AysWL6.net] 社名 金額 部門 ================ A社 1000円 営業 A社 2000円 事務 A社 1500円 事務 A社 3000円 販売 B社 1500円 事務 B社 3500円 営業 C社 1000円 営業 C社 3000円 営業 C社 1500円 販売 D社 2000円 事務 こんな感じのA社⇒D社のように整列されたデータに対して
897 名前:デフォルトの名無しさん mailto:sage [2018/11/03(土) 11:43:51.55 ID:S6AysWL6.net] 社名 金額 部門 ================ A社 1000円 営業 A社 2000円 事務 A社 1500円 事務 A社 3000円 販売 A社 営業計 1000円 < 事務計 3500円 < 販売計 3000円 < 計 7500円 < B社 1500円 事務 B社 3500円 営業 B社 営業計 3500円 < 事務計 1500円 < 計 5000円 < C社 1000円 営業 C社 3000円 営業 C社 1500円 販売 C社 営業計 4000円 < 販売計 1500円 < 計 5500円 < D社 2000円 事務 事務計 2000円 < 計 2000円 < 全社 営業計 8500円 < 事務計 7000円 < 販売計 4500円 < 計 20000円 < こんな感じに行の間に小計、最後に合計を挿入するようなコードありますか?( < が追加行) 小計は必ず 営業、事務、販売の順番に並び、0円の場合は行自体挿入しません 実際ののデータは会社数、部門共に30以上あるので速度重視であれば望ましいです
898 名前:デフォルトの名無しさん mailto:sage [2018/11/03(土) 12:46:22.45 ID:q2N3VeHV.net] そんなもんExcelのグループ集計で一発 お前に必要なのはVBAではなくExcelの入門書
899 名前:デフォルトの名無しさん mailto:sage [2018/11/03(土) 13:03:36.46 ID:3VcH/mb2.net] >>829 span使え