X



Excel VBA 質問スレ Part61

■ このスレッドは過去ログ倉庫に格納されています
0490デフォルトの名無しさん (ワッチョイ 6602-K9GS)
垢版 |
2019/05/31(金) 13:43:20.27ID:xVkqny4q0
>>489
今月にこだわっててもおかしくないし
一連の流れをマクロにしてその一部の質問してるわけでしょ
だから>>468>>472も的外れって話
訂正するわけでもないのに再アンカをしかも連投するってせっかちすぎない?
0491デフォルトの名無しさん (ワッチョイ 3ff9-n0I8)
垢版 |
2019/05/31(金) 13:55:19.86ID:iXFRocgY0
>>490
今月とかどうでもいいんだよ
単に参照すればいいだけ、それで質問者の意図に対応できないか?
自分の主張じゃなく、何が正しいかで提案するんだよ
VBAで作れば何でもできるさ、でも単に絶対参照でいいものをこねくり回すなよ
0495デフォルトの名無しさん (ワッチョイ 6668-2ZOZ)
垢版 |
2019/05/31(金) 14:48:52.06ID:2f7ZWXQQ0
>>494
>>459>>462でマクロでやりたいと言ってるし、
マクロ以外の回答に対してノーリアクション
数式での回答を求めてないのだろう。結果を求めるだけじゃなく、マクロ自体を書きたいという質問者もいるわけだしな
あまり押し付けるのもどうかと思う

もちろん一般的な場合は君のやり方が正しいのは明らか
さすがにそれが分かってない人はいないだろう
0498デフォルトの名無しさん (ワッチョイ 3ff9-n0I8)
垢版 |
2019/05/31(金) 16:21:11.81ID:iXFRocgY0
>>496
削除が必要って単なる思い込みではないのかな
Excelの使い方もわからないのってVBAって魔法の玉手箱じゃないの
でなければ、質問者に対する最適の解をさっさとVBAで示せばいいんだよ
0499デフォルトの名無しさん (エムゾネ FF8a-suWd)
垢版 |
2019/05/31(金) 16:31:39.12ID:Q8fJ9KqCF
元々の質問を見る限り、詳細が無いのでVBAで解決すべきか数式で解決すべきか判断できん。

逆に言えばこれだけの情報でVBAを必要無いとか言ってしまえる人って初心者とまでは言わないけど大したスキルは無いんだろうなと思ってしまう。
0503デフォルトの名無しさん (エムゾネ FF8a-suWd)
垢版 |
2019/05/31(金) 17:17:59.31ID:Q8fJ9KqCF
>>502
俺はこんな質問に回答しないよ。
何処の掲示板でもそうだけと面白いテーマじゃなきゃ回答しない。
俺が回答する必要も無いだろう。

>>460とかを見てどうにか頑張れば良いんじゃね?と思ってる。
0508デフォルトの名無しさん (スプッッ Sd2a-suWd)
垢版 |
2019/05/31(金) 17:43:17.34ID:2P/bRCUed
というか>>499に書いた通り、状況を判断する材料が少ない。
例えば月のシートが沢山あって、それぞれのシートの集計結果を集計シートで閲覧したいという状況なら数式の方が良さそうだ。(それでも情報が足りないから「良さそう」としか言えん。)
0519デフォルトの名無しさん (ササクッテロ Sp33-+KpA)
垢版 |
2019/06/01(土) 00:10:30.70ID:Re37ayj0p
>>517
もちろん全シート一括で印刷かけてるんですけど、スプール設定?の関係で重いシートの印刷が後回しになるので10ページ1ページ2ページの3シートのファイル印刷すると10ページのシートが一番最後に印刷されちゃって不便なんです
0520デフォルトの名無しさん (ワッチョイ 6a01-yed5)
垢版 |
2019/06/01(土) 02:54:17.07ID:48zxZgqm0
ListBox使ってるんですけど、たまに表示がバグります
薄い横線がListBox内の全ての行間に表示されちゃうんです
行のフォーカスを動かすと、動かした範囲ではこの変な横線は一旦消えるんだけど、
何かをするとまた横線があらわれる

こういうのって何が原因かわかりますか?
再現性がそう高くないので、対策しづらいです
表示がおかしいだけでプログラム自体は問題なく動きます
0521デフォルトの名無しさん (ワッチョイ 6a01-yed5)
垢版 |
2019/06/01(土) 03:41:24.97ID:48zxZgqm0
>>520ですけどもしかしたら直ったかもしれないです
multiSelectをfmMultiSelectExtendedに設定してるんですけど、
UserForm Initialize内で設定するのではなく
プロパティウィンドウで選択して設定するようにしたら今の所出ないです

再現性があれなんで確実とは言えないんですけど
0522デフォルトの名無しさん (ワッチョイ 0bda-2ZOZ)
垢版 |
2019/06/01(土) 07:48:48.81ID:FEI28S1s0
>>520
ListBoxに限らず、Excelのオブジェクトは変だよ。
そんなもんだと思う。
俺もこんな現象に遭遇した。

・印刷プレビュー直後に、リストボックスを操作できなくなる。(シートを切り替えると直る。)
・MSクエリやADOを使うと、ボタンやテキストボックスの位置が、見た目と合わなくなる。

 [コマンドボタン]          何もない部分
     ↑                 ↑
ここにボタンがあるのに  ここを押さないと反応しない
0523デフォルトの名無しさん (ワッチョイ 0bda-2ZOZ)
垢版 |
2019/06/01(土) 07:53:01.65ID:FEI28S1s0
あと、なんじゃそりゃ!???? と思ったのが、

 [コマンドボタン]
    ↑
  押すと・・

             →→→ [コマンドボタン]
    ↑
 ボタンが逃げる

多分、押す前のボタン画像が左にあって、
押した後の(凹んだ状態の)画像が右にあるんだと思う。
0524デフォルトの名無しさん (ワッチョイ 6a01-yed5)
垢版 |
2019/06/01(土) 08:43:23.59ID:48zxZgqm0
>>523
論理的に解決できる方法がないから山勘に頼っていじってみて
運良く解決できたらもうけもんってことですかね

表示がぶれると、使ってる人が、このプログラム大丈夫かと心配し始めちゃうんで
できるだけ避けたいところです
0527デフォルトの名無しさん (ワッチョイ 3ff9-n0I8)
垢版 |
2019/06/01(土) 16:00:03.94ID:Vz6e2VkK0
まあ、プロさんのようだから答えられないの恥ずかしいのか(笑)
あげとくは
0535デフォルトの名無しさん (ワッチョイ 268c-ViZH)
垢版 |
2019/06/01(土) 22:55:52.58ID:g0N7gK6Z0
>>532
早速やってみたけど、逆のパターンである
「先頭に数値が入っていて途中から文字列に変化した」場合は判定できた。
具体的には数値部分だけ読み込んで文字列の部分はNULLになった。
「先頭に文字列が入っていて途中から数値に変化した」場合は全部文字列扱いになったので厳密には判定不能。
0536デフォルトの名無しさん (ワッチョイ 2fd6-Ekl2)
垢版 |
2019/06/02(日) 18:41:53.51ID:3MovPWtK0
初心者なので意味がわかりづらかったらすみません

まず、やりたいことは
1.ユーザーにB2〜E2あたりに文字を入力してもらう
2.それを5行前後繰り返す
3.この後にボタンを押してもらう
(以降マクロ処理)
4.入力して貰った行の各左セル(A列)に営業日(月初)を入力する
入力内容を下の行にコピペして、A列日付だけ翌営業日にする
それを月末日まで繰り返す

これを実現したい場合、営業日付をどう表示し、どう繰り返せばよいか検討がつきません
アドバイス頂けませんでしょうか
日付に関してyyyymmのみユーザーに手入力して貰う予定で、それを利用できるかなと思っています
0537デフォルトの名無しさん (ワッチョイ cf68-2ZOZ)
垢版 |
2019/06/02(日) 19:17:16.23ID:wosufaXU0
>>536
Sub foo()

コピー元_行数 = Cells(Rows.Count, 2).End(xlUp).Row - 1
Range(Cells(2, 2), Cells(コピー元_行数 + 1, 5)).Copy

処理年 = InputBox("処理する年を四桁で入力してください", "", Format(Date, "yyyy"))
処理月 = InputBox("処理する月を1桁で入力してください", "", Format(Date, "m"))
'ここに上記が数値以外なら終了させる分岐をかます。めんどいのでしてない

For i = 1 To Day(DateSerial(処理年, 処理月 + 1, 0))
Cells(コピー元_行数 * (i - 1) + 2, 2).PasteSpecial
Range(Cells(コピー元_行数 * (i - 1) + 2, 1), Cells(コピー元_行数 * i + 1, 1)).Value = _
DateSerial(処理年, 処理月, i)
Next

End Sub
0539デフォルトの名無しさん (アウアウエー Sae2-Dmnv)
垢版 |
2019/06/04(火) 00:44:40.62ID:Vr0YkSWUa
教えてください。
ActiveCell.EntireRow.Copy Destination
これで「任意のセル選択中で1行コピー」になりますが、
改造して「任意の複数セル選択中の複数行をコピー」に変えたいんですがわかりますか?
0540デフォルトの名無しさん (ワッチョイ 738e-oyaE)
垢版 |
2019/06/04(火) 01:01:51.67ID:sjSsEz0E0
仮面ライダー本郷猛は改造人間である。彼を改造したショッカーは世界制覇を企む悪の秘密結社である。仮面ライダーは人間の自由のためにショッカーと戦うのだ!
0541デフォルトの名無しさん (アウアウエー Sae2-Dmnv)
垢版 |
2019/06/04(火) 07:28:25.36ID:CwYFwdXYa
>>539

Selection で自己解決したんですが、


ThisWorkbook.Worksheets("sheetA").Activate
Selection.EntireRow.Copy Destination:=ThisWorkbook.Worksheets("SheetB").Range("A57:A62")
ThisWorkbook.Worksheets("SheetB").Activate
Range("A3:I4").Select
End Sub

で所定の6行のスペースにペーストするんですが、選択セルが5以下だと重複して貼り付けられます。
重複しない方法を教えてください。
0544デフォルトの名無しさん (CA 0H37-G2Tg)
垢版 |
2019/06/04(火) 11:03:51.11ID:ABA6WeJwH
【速報】金券五百円分とすかいらーく優侍券をすぐもらえる 
https://pbs.twimg.com/media/D8I_sqPU0AEizjq.jpg   
   
@ スマホでたいむばんくを入手    
A 会員登録を済ませる
B マイページへ移動する   
C 招待コード→招待コードを入力する [Rirz Tu](スペース抜き)     
 
今なら更に4日18時までの登録で2倍の600円の紹介金を入手
クオカードとすかいらーく優待券を両方ゲットできます。     
       
数分の作業でできますのでご利用下さい。   
0547デフォルトの名無しさん (アウアウエー Sae2-Dmnv)
垢版 |
2019/06/04(火) 18:55:29.74ID:w6NTuaQma
>>542
できました。ありがとうございます。
0548デフォルトの名無しさん (ササクッテロ Sp33-+KpA)
垢版 |
2019/06/04(火) 22:55:20.87ID:JKzLDG9lp
直前に開いたファイルのキャッシュ的なものを参照して情報を取得することってできますか?
例えば直前に開いて印刷して閉じて消去したファイルのA1セルに記載の値を別ファイルのB1セルに転記する、みたいな
0549デフォルトの名無しさん (ワッチョイ 73f1-Xi99)
垢版 |
2019/06/04(火) 23:07:17.09ID:e2Nk6zam0
>>548
そんなの知るか
0553デフォルトの名無しさん (ワッチョイ 8f91-Ddlz)
垢版 |
2019/06/05(水) 14:54:24.90ID:1kcRpkSq0
これはそんなの知るかという気持ちもよく分かる。
工夫次第でどうとでもなるけど、そういう問題かどうかをはっきりさせるべき。

そういう仕組みを作ることなくできるかと言われれば、できないと答えるだろう。
工夫でそういう仕組みを作りたいというなら、それについて自分の考えを述べるべきだ。
VBAの問題じゃなくて考え方を考える問題なんだから単純なスキルの問題ではない。
0554デフォルトの名無しさん (ワッチョイ b7ce-2ZOZ)
垢版 |
2019/06/05(水) 15:52:32.95ID:bp5RZsKU0
事前に、ファイルを閉じる前や消す前に準備しておけばどうともできる

他人が使ったパソコンをこっそりのぞき見したいなら、それはかなり難しい
不可能じゃないけど、現時点では動機が不明で教えるべきじゃないと思われるので書かない
0561デフォルトの名無しさん (スッップ Sd8a-aXJR)
垢版 |
2019/06/05(水) 23:48:39.29ID:70FqVZZPd
いやいや
ここは御大層に「ツール」とか書かれて吹き出す場面だろ
0564デフォルトの名無しさん (ワッチョイ a5f9-MqbY)
垢版 |
2019/06/06(木) 12:05:19.65ID:vG+mGYiZ0
まあな、Excelの標準機能で出来ることも知らん奴が、作りたいものを考えて質問するんだよな
だけど、ちょっと知ったかぶってどんなプログラムを作りたいとか書くけど
普通にExcelの機能で出来ることも、質問してるんだよな
動作仕様をかける奴は普通VBAのマクロも作れる
作れないやつの動作仕様ってごみなんだよな、何がしたいかだけ書けよと思う
0570デフォルトの名無しさん (ワッチョイ 4f01-sTnS)
垢版 |
2019/06/07(金) 01:08:10.00ID:RApS/5ei0
ファイルの保存先の権限がなくて、別のユーザーのアカウントとパスワードで保存できる??
0572デフォルトの名無しさん (オイコラミネオ MM49-sTnS)
垢版 |
2019/06/07(金) 12:45:57.13ID:6q38d7bCM
あるよ
0573中国人 (ワッチョイ 17f1-nH6h)
垢版 |
2019/06/07(金) 15:55:31.64ID:DiCkvzGr0
ないあるよ
0581デフォルトの名無しさん (ブーイモ MMe1-nH6h)
垢版 |
2019/06/09(日) 07:51:19.35ID:6FBaXgmQM
できます
0582580 (ブーイモ MMe1-nH6h)
垢版 |
2019/06/09(日) 07:52:18.86ID:6FBaXgmQM
>>581
できるかどうかを聞いているのではない。
やり方を聞いておるのだ。
0584デフォルトの名無しさん (アウアウエー Sa93-2k/K)
垢版 |
2019/06/09(日) 08:14:03.36ID:fRZrFeuoa
>>581
a=cells(1,1).value
b=cells(2,1).value

@abc.pdfをオープン
A3p目の左上を起点に左から100、上から50の位置に、8ptで幅20の黒色で、aの内容のテキスト挿入

if b=1 then
B3p目の左上起点の左から200上から300の位置に、黒色の縦10幅10の円を挿入
else if b=2 then
C上記Bの位置違いパターン
endif

この@ABを教えていただきたいです。
0588デフォルトの名無しさん (アウアウエー Sa93-2k/K)
垢版 |
2019/06/09(日) 09:45:03.10ID:fRZrFeuoa
>>587
ありがとう、ちょっと読み込んでみる

やりたいことは要は、エクセルにずらーっとリストがあって、その内容を、

雇用契約書の穴埋め書式みたいな他のファイル(エクセル、ワード、pdfあり)に展開したい

展開内容はセル内容の挿入と、履歴書の男・女みたいに、○を挿入する形がある
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況