スレ立ての際は一行目に
!extend:checked:vvvvv:1000:512
と入れてスレ立てして下さい
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※関連スレ
VBAなんでも質問スレ Part2
http://mevius.2ch.net/test/read.cgi/tech/1432173164/
Access VBA 質問スレ Part1
http://mevius.2ch.net/test/read.cgi/tech/1328536426/
※前スレ
Excel VBA 質問スレ Part51
http://mevius.2ch.net/test/read.cgi/tech/1510107990/
Excel VBA 質問スレ Part52
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2018/01/27(土) 20:25:05.67ID:Xe+uGT7T595デフォルトの名無しさん
2018/04/01(日) 14:19:52.40ID:YzkMtc7h >>594
というのも、例えばInteger型の変数iに代入しようとして、
i=テキストボックス名.LineCount
ってやると、
実行時エラー '2185':
LineCountプロパティの値を取得できません。このコントロールはフォーカスを持つ必要
があります。SetFocusメソッドによって、このプロパティまたはメソッドが参照されるま
えにフォーカスが移動しました。
ってエラーになったもので。
というのも、例えばInteger型の変数iに代入しようとして、
i=テキストボックス名.LineCount
ってやると、
実行時エラー '2185':
LineCountプロパティの値を取得できません。このコントロールはフォーカスを持つ必要
があります。SetFocusメソッドによって、このプロパティまたはメソッドが参照されるま
えにフォーカスが移動しました。
ってエラーになったもので。
596デフォルトの名無しさん
2018/04/01(日) 16:31:21.48ID:OrI5htLK >>595
さあね、SetFocusとセットで使って問題ないシーンだったら使えばいいんじゃね?
なんでそういう作りになってるかはしらんけど、歴史的な理由ってやつじゃね?
LineCountは全部品共通で使い回してる内部変数を参照していて
フォーカスが当たってるときだけ値を保持してるとか
さあね、SetFocusとセットで使って問題ないシーンだったら使えばいいんじゃね?
なんでそういう作りになってるかはしらんけど、歴史的な理由ってやつじゃね?
LineCountは全部品共通で使い回してる内部変数を参照していて
フォーカスが当たってるときだけ値を保持してるとか
597デフォルトの名無しさん
2018/04/02(月) 00:58:07.54ID:4AdYvMWY Ruby で、Selenium WebDriver で、ブラウザの自動操作をすると、
入力コントロールに入力するには、フォーカスが必要だったかな?
フォーカスは、キーボードなどの入力装置を独占するから、
OS内で同時に、1つのアプリの、1つのコントロールしか持てない
入力コントロールに入力するには、フォーカスが必要だったかな?
フォーカスは、キーボードなどの入力装置を独占するから、
OS内で同時に、1つのアプリの、1つのコントロールしか持てない
598デフォルトの名無しさん
2018/04/02(月) 12:20:32.51ID:7SJzoey2 それは単なるwebdriverの仕様あるいは方針にすぎん
599デフォルトの名無しさん
2018/04/02(月) 13:41:52.74ID:zMeLik1V 誰か教えてください。いくら調べても分からなかった・・・
近似曲線を引くマクロを書いて、ボタンに登録してるのですが、この動作を行うと
1回目の曲線が変な形で残ってしまう。
1回目の曲線を消したいのですが、どうしても消し方がわからない。
Private Sub CommandButton1_Click()
Dim num As Integer
num = MovingAvgUF.TextBox1.Value
ActiveSheet.ChartObjects(1).Activate
ActiveChart.ChartArea.Select
ActiveChart.FullSeriesCollection(1).Trendlines.Add
ActiveChart.FullSeriesCollection(1).Trendlines(1).Select
With Selection
.Type = xlMovingAvg
.Period = num
End With
With Selection.Format.Line
.ForeColor.RGB = RGB(0, 0, 0)
.Weight = 1.5
End With
Unload MovingAvgUF
Range("A3").Select
End Sub
近似曲線を引くマクロを書いて、ボタンに登録してるのですが、この動作を行うと
1回目の曲線が変な形で残ってしまう。
1回目の曲線を消したいのですが、どうしても消し方がわからない。
Private Sub CommandButton1_Click()
Dim num As Integer
num = MovingAvgUF.TextBox1.Value
ActiveSheet.ChartObjects(1).Activate
ActiveChart.ChartArea.Select
ActiveChart.FullSeriesCollection(1).Trendlines.Add
ActiveChart.FullSeriesCollection(1).Trendlines(1).Select
With Selection
.Type = xlMovingAvg
.Period = num
End With
With Selection.Format.Line
.ForeColor.RGB = RGB(0, 0, 0)
.Weight = 1.5
End With
Unload MovingAvgUF
Range("A3").Select
End Sub
600デフォルトの名無しさん
2018/04/02(月) 16:44:10.21ID:Ts/JiFXW >>599
実行のたびにAddしているので、新しく追加されているからでしょう
たぶん移動平均の期間を可変にしたいのだろうから
ない場合だけAdd、すでにあれば既存のパラメーターを変更するようにする
あとActivateとかSelectionは無駄なのでやめる
Dim num As Integer
Dim graph
num = MovingAvgUF.TextBox1.Value
Set graph= Worksheets(1).ChartObjects(1).Chart.SeriesCollection(1)
If graph.Trendlines.Count = 0 Then
With graph.Trendlines.Add
.Type = xlMovingAvg
.Period = num
.Format.Line.ForeColor.RGB = RGB(100, 0, 0)
.Format.Line.Weight = 1.5
End With
Else
graph.Trendlines(1).Period = num
End If
Unload MovingAvgUF
これでどうでしょう
グラフ指定(Set句のところ)はそっちの環境に合わせて書き換えてね
実行のたびにAddしているので、新しく追加されているからでしょう
たぶん移動平均の期間を可変にしたいのだろうから
ない場合だけAdd、すでにあれば既存のパラメーターを変更するようにする
あとActivateとかSelectionは無駄なのでやめる
Dim num As Integer
Dim graph
num = MovingAvgUF.TextBox1.Value
Set graph= Worksheets(1).ChartObjects(1).Chart.SeriesCollection(1)
If graph.Trendlines.Count = 0 Then
With graph.Trendlines.Add
.Type = xlMovingAvg
.Period = num
.Format.Line.ForeColor.RGB = RGB(100, 0, 0)
.Format.Line.Weight = 1.5
End With
Else
graph.Trendlines(1).Period = num
End If
Unload MovingAvgUF
これでどうでしょう
グラフ指定(Set句のところ)はそっちの環境に合わせて書き換えてね
601デフォルトの名無しさん
2018/04/02(月) 17:15:58.69ID:zMeLik1V602デフォルトの名無しさん
2018/04/03(火) 12:12:56.67ID:eJeJFdNC VB6で計算ボタンをボタンを押すと各フォームのテキストボックスの値とか使っていろいろ自動で計算してフォームが勝手に閉じられるんですが、デバッグで1個ずつ追ってくと途中で止まってしまうのって仕方ないんですかね?
gotfocusやらclickとかで途中で無理やりやってるとは思うですけど、通る順序を追うにはどうしたらいいですか?
gotfocusやらclickとかで途中で無理やりやってるとは思うですけど、通る順序を追うにはどうしたらいいですか?
603デフォルトの名無しさん
2018/04/03(火) 13:11:49.11ID:Coyy9Cz8 VB6
604デフォルトの名無しさん
2018/04/03(火) 21:25:59.19ID:q0sRpwvy A1とB1は空白C1からZ1まで日付型がはいっています。
3月分の最後
20180330と2018331がないので20180328を拾いたい。
4月分の初め
20180401と20180402が無いので20180403を拾いたい。
日付型------------------------------
空白 (A1)
空白 (B1)
20180325(C1)
20180326(D1)
20180328(E1)
20180403(F1)
20180405(G1)
20180406(H1)
・
・
・
20180505
------------------------------------------
Sub 日付
Dim 最小数 As long, 最大数 As long
最小数= WotksheetFunction.Dmin(Rnge("1:1"),range("C1"),"200180401")
最大数= WotksheetFunction.Dmin(Rnge("1:1"),range("C1"),"200180331")
End Sub
----------------------------------------
これだとうまくいかない・・・・。
何か間違っているのでしょか・・・?
3月分の最後
20180330と2018331がないので20180328を拾いたい。
4月分の初め
20180401と20180402が無いので20180403を拾いたい。
日付型------------------------------
空白 (A1)
空白 (B1)
20180325(C1)
20180326(D1)
20180328(E1)
20180403(F1)
20180405(G1)
20180406(H1)
・
・
・
20180505
------------------------------------------
Sub 日付
Dim 最小数 As long, 最大数 As long
最小数= WotksheetFunction.Dmin(Rnge("1:1"),range("C1"),"200180401")
最大数= WotksheetFunction.Dmin(Rnge("1:1"),range("C1"),"200180331")
End Sub
----------------------------------------
これだとうまくいかない・・・・。
何か間違っているのでしょか・・・?
605デフォルトの名無しさん
2018/04/03(火) 21:46:25.59ID:UZjK1Wan 何がしたいのか説明を読んでもコードを見てもさっぱりわからん
わからんけどエスパーすると”201803”で検索して最後に見つかったセルと”201804”で検索して最初に見つかったセルでいいんじゃないの?
わからんけどエスパーすると”201803”で検索して最後に見つかったセルと”201804”で検索して最初に見つかったセルでいいんじゃないの?
606デフォルトの名無しさん
2018/04/04(水) 08:15:37.03ID:cLM6HPyb607デフォルトの名無しさん
2018/04/04(水) 11:56:03.28ID:k8docH3r MID("20180325",5,2)で"03"が取り出せるから、それで判断すればいいんじゃないの。
色んな日付上の制約があるならLEFT(),MID(),RIGHT()使い分けで。
色んな日付上の制約があるならLEFT(),MID(),RIGHT()使い分けで。
608デフォルトの名無しさん
2018/04/04(水) 12:58:19.17ID:ZiMW+8i0 >>607
ありがとうございます。
その方法がありましたね・・・。
勉強になります。
------------------------------------------------------------
関数
{=MIN(IF(20180201<=1:1,1:1,""))}
{=MAX(IF(20180231>=1:1,1:1,""))}
これだとうまく行きますが、VBAだとどうやって作るのかなと思っていました。
ありがとうございます。
その方法がありましたね・・・。
勉強になります。
------------------------------------------------------------
関数
{=MIN(IF(20180201<=1:1,1:1,""))}
{=MAX(IF(20180231>=1:1,1:1,""))}
これだとうまく行きますが、VBAだとどうやって作るのかなと思っていました。
609デフォルトの名無しさん
2018/04/04(水) 13:11:13.67ID:A+wsnEra 素直にfor回せ
610デフォルトの名無しさん
2018/04/04(水) 13:19:04.73ID:ZhVuw5lC611デフォルトの名無しさん
2018/04/04(水) 13:36:26.96ID:p0Y8un4q 自動車業界で例えると
1、トヨタ、日産、ホンダ
2、1の下請け企業名
3、2の下請け企業名
4、3の下請け企業名
.
.
.
としたとき、2のAの企業名を入力したらそこからの下請け企業を抽出したいんですが、その場合のエクセルのシートの作り方をどのように作れば効率がいいですか?
1、トヨタ、日産、ホンダ
2、1の下請け企業名
3、2の下請け企業名
4、3の下請け企業名
.
.
.
としたとき、2のAの企業名を入力したらそこからの下請け企業を抽出したいんですが、その場合のエクセルのシートの作り方をどのように作れば効率がいいですか?
612デフォルトの名無しさん
2018/04/04(水) 16:08:01.72ID:v9gnJiNk シートAAAにあるテーブル1の種目という項目のデータを
ComboBox1のリストに代入するのは下記マクロでできました
Private Sub UserForm_Initialize()
Dim KV As Range
Set KV = Sheets("AAA").Range("テーブル1[種目]")
With ComboBox1
For i = 1 To KV.Rows.Count
.AddItem KV(i)
Next i
End With
End Sub
さて、ここからが質問です
テーブル1にフィルターをかけた後に、フィルターで残った種目という項目のデータを
ComboBox1のリストに代入するのはどうしたら良いのでしょうか?
よろしくお願い致します
ComboBox1のリストに代入するのは下記マクロでできました
Private Sub UserForm_Initialize()
Dim KV As Range
Set KV = Sheets("AAA").Range("テーブル1[種目]")
With ComboBox1
For i = 1 To KV.Rows.Count
.AddItem KV(i)
Next i
End With
End Sub
さて、ここからが質問です
テーブル1にフィルターをかけた後に、フィルターで残った種目という項目のデータを
ComboBox1のリストに代入するのはどうしたら良いのでしょうか?
よろしくお願い致します
613デフォルトの名無しさん
2018/04/04(水) 16:56:39.61ID:JVI42cK6 伝票番号 顧客名 商品名 数量 価格 金額
というデータがあり、同じ伝票番号に3〜6行の取引データがあります
(1枚の伝票に複数の商品の販売記録がある)
同じ伝票番号の行を、1行残して削除し、1伝票番号に1行というデータに作り替えたいと考えてます。
対象となる行数は50万行
今は、ある伝票番号の一番上の次の行と
その伝票番号の一番下の行を範囲で削除し、
この処理を繰り返しているのですが、とても時間がかかります
どういう方法なら早く処理できるでしょうか?
というデータがあり、同じ伝票番号に3〜6行の取引データがあります
(1枚の伝票に複数の商品の販売記録がある)
同じ伝票番号の行を、1行残して削除し、1伝票番号に1行というデータに作り替えたいと考えてます。
対象となる行数は50万行
今は、ある伝票番号の一番上の次の行と
その伝票番号の一番下の行を範囲で削除し、
この処理を繰り返しているのですが、とても時間がかかります
どういう方法なら早く処理できるでしょうか?
614デフォルトの名無しさん
2018/04/04(水) 17:13:35.91ID:2HxBBF0q615デフォルトの名無しさん
2018/04/04(水) 17:27:12.13ID:2HxBBF0q >>613
単純に重複を削除したいだけでしょうか?
ぶら下がってるデータを1つにまとめつつでしょうか?
単純に重複削除ならフィルターでできたはず
もしくはRemoveDuplicatesというメソッドで
つかい方はこちら
https://msdn.microsoft.com/ja-jp/vba/excel-vba/articles/range-removeduplicates-method-excel
単純に重複を削除したいだけでしょうか?
ぶら下がってるデータを1つにまとめつつでしょうか?
単純に重複削除ならフィルターでできたはず
もしくはRemoveDuplicatesというメソッドで
つかい方はこちら
https://msdn.microsoft.com/ja-jp/vba/excel-vba/articles/range-removeduplicates-method-excel
616デフォルトの名無しさん
2018/04/04(水) 18:13:35.11ID:JVI42cK6617デフォルトの名無しさん
2018/04/08(日) 00:48:16.79ID:GhjqeU3J 質問です。
Dim Wb2 As Workbook
buf = Dir(ThisPass & "\" & strfirstfilename)
Do While Len(buf) > 0
If LCase(buf) Like "*.xls" Then
buf2 = Left(buf, InStrRev(buf, ".") - 1)
End If
buf = Dir()
Loop
Set Wb2 = Workbooks(strfirstfilename) ←”インデックスが有効範囲にありません”
というエラーが発生します。
strfirstfilenameには”AAA_original-コピー.xls”が入っており、ここまではOKです。
なぜインデックスが有効範囲にないのか・・・。
どなたか教えてください。
よろしくお願いします。
Dim Wb2 As Workbook
buf = Dir(ThisPass & "\" & strfirstfilename)
Do While Len(buf) > 0
If LCase(buf) Like "*.xls" Then
buf2 = Left(buf, InStrRev(buf, ".") - 1)
End If
buf = Dir()
Loop
Set Wb2 = Workbooks(strfirstfilename) ←”インデックスが有効範囲にありません”
というエラーが発生します。
strfirstfilenameには”AAA_original-コピー.xls”が入っており、ここまではOKです。
なぜインデックスが有効範囲にないのか・・・。
どなたか教えてください。
よろしくお願いします。
618デフォルトの名無しさん
2018/04/08(日) 01:24:05.18ID:bco3gmLh >>617
ワークブックファイルを開いてないから
ワークブックファイルを開いてないから
619デフォルトの名無しさん
2018/04/08(日) 02:53:42.68ID:SzguuQfE >>617
ファイルシステムの場所を示す「パス」はpassじゃなくてpathだよ
ファイルシステムの場所を示す「パス」はpassじゃなくてpathだよ
620デフォルトの名無しさん
2018/04/08(日) 07:04:38.01ID:U7ChR0a6 まとめるとこう
Set Wb2 = Workbooks.Open(ThisWorkbook.Path & "\" & strfirstfilename)
Set Wb2 = Workbooks.Open(ThisWorkbook.Path & "\" & strfirstfilename)
621デフォルトの名無しさん
2018/04/08(日) 11:56:26.77ID:GhjqeU3J622デフォルトの名無しさん
2018/04/08(日) 11:57:47.06ID:GhjqeU3J623デフォルトの名無しさん
2018/04/08(日) 11:59:21.51ID:GhjqeU3J >>620
このプログラムの直後に
Workbooks.Open (ThisPath & "\" & strfirstfilename)
があったので、それをsetの前に持ってきて成功しました。
ありがとうございました。
このプログラムの直後に
Workbooks.Open (ThisPath & "\" & strfirstfilename)
があったので、それをsetの前に持ってきて成功しました。
ありがとうございました。
624デフォルトの名無しさん
2018/04/08(日) 12:36:53.53ID:bco3gmLh >>620だと昔のExcelじゃ動かなかった歴史的経緯がある
625デフォルトの名無しさん
2018/04/08(日) 19:54:17.74ID:e7Arryer ダイアログシートって使ってる人おる?
ちょっと前客先で初めて見てたまげたわ
ちょっと前客先で初めて見てたまげたわ
626デフォルトの名無しさん
2018/04/09(月) 01:50:27.33ID:HvlaoHdk >>624
openだと開かない?って事??何故?
openだと開かない?って事??何故?
627デフォルトの名無しさん
2018/04/09(月) 06:17:53.49ID:aBFApcbH628デフォルトの名無しさん
2018/04/09(月) 08:06:45.50ID:+GOKj8c/629デフォルトの名無しさん
2018/04/09(月) 09:59:01.14ID:4rd3h0yy 質問です。
ピボットテーブルのフィルターで特定の日付を絞りこみたいのですがどうしたら良いでしょうか?
マクロの記録を使用したり、「ピボットテーブル フィルター 日付」などで検索しましたが出来ませんでした。
関係があるかはわかりませんが既存の日付フィルターも選択出来ない状態になっています。
ご存知の方がいれば教えていただけないでしょうか?
よろしくお願いいたします。
ピボットテーブルのフィルターで特定の日付を絞りこみたいのですがどうしたら良いでしょうか?
マクロの記録を使用したり、「ピボットテーブル フィルター 日付」などで検索しましたが出来ませんでした。
関係があるかはわかりませんが既存の日付フィルターも選択出来ない状態になっています。
ご存知の方がいれば教えていただけないでしょうか?
よろしくお願いいたします。
630デフォルトの名無しさん
2018/04/09(月) 10:59:34.52ID:0O8XR8PB 質問です とか 教えてで始まる質問をするのは厚かましい馬鹿ばっか
631デフォルトの名無しさん
2018/04/09(月) 12:37:19.47ID:VtsYOpX+ そーいうスレなので
632デフォルトの名無しさん
2018/04/09(月) 19:03:54.95ID:L4YqDawe >>629
それはもしかしてピボットテーブルを使わなくても出来る内容なんじゃないかと思えてならない
それはもしかしてピボットテーブルを使わなくても出来る内容なんじゃないかと思えてならない
633デフォルトの名無しさん
2018/04/09(月) 19:30:20.73ID:zGBk1vsP >>632
返信ありがとうございます。
仕事で使用しているのですが別シートにデータを入力して、ピボットテーブルの行エリアに型式、列エリアに出荷日と納品先を指定していて、翌日出荷分などを抽出したい状態です。
返信ありがとうございます。
仕事で使用しているのですが別シートにデータを入力して、ピボットテーブルの行エリアに型式、列エリアに出荷日と納品先を指定していて、翌日出荷分などを抽出したい状態です。
634デフォルトの名無しさん
2018/04/09(月) 20:11:24.02ID:p9GpoA3a635デフォルトの名無しさん
2018/04/09(月) 20:49:14.80ID:0O8XR8PB な?厚かましい馬鹿だろ?
636デフォルトの名無しさん
2018/04/09(月) 20:53:05.38ID:xfuEg0jA 過疎るより良くね?
嫌ならスルーしてれば?
嫌ならスルーしてれば?
637デフォルトの名無しさん
2018/04/09(月) 22:14:46.27ID:BolAIQzl デバッグ停止した時をイベントとして動く仕掛けが欲しい
画面描画更新抑止解除とか書くの面倒
画面描画更新抑止解除とか書くの面倒
638デフォルトの名無しさん
2018/04/10(火) 02:11:50.06ID:uEuHjy2e >>637
しょっちゅうやらかすんならIMEに単語登録しといてイミディエイトウィンドウで実行
しょっちゅうやらかすんならIMEに単語登録しといてイミディエイトウィンドウで実行
639デフォルトの名無しさん
2018/04/10(火) 07:54:34.58ID:4h5TWJMH >>633
フィルターだか、スライサーだかで普通に出来なかったっけ?
出来ないならなんか設定がおかしいと思う。
まずはデータピックアップして、小規模のデータで試してみたら。
あと、スレチな上に質問レベルも低いからその程度のことはもっと自分で調べるくせをつけた方がいい。
フィルターだか、スライサーだかで普通に出来なかったっけ?
出来ないならなんか設定がおかしいと思う。
まずはデータピックアップして、小規模のデータで試してみたら。
あと、スレチな上に質問レベルも低いからその程度のことはもっと自分で調べるくせをつけた方がいい。
640デフォルトの名無しさん
2018/04/10(火) 09:38:25.63ID:GHxbWUjO ブックやシートの構成がどうなっていて、どうしたいのかさっぱり判らんから
テスト用のデータを付けたブックをうpしたほうが早い。
んで、自分は何処まで出来たのかをも付けて
そしたら、それに対して少しはレスが付くかもだなw
テスト用のデータを付けたブックをうpしたほうが早い。
んで、自分は何処まで出来たのかをも付けて
そしたら、それに対して少しはレスが付くかもだなw
641デフォルトの名無しさん
2018/04/10(火) 09:44:16.04ID:HFEk8tOo 「VBA」
642デフォルトの名無しさん
2018/04/10(火) 09:46:10.36ID:3MvS74tV >>639
答えたくないなら黙ってればいいだけ
答えたくないなら黙ってればいいだけ
643デフォルトの名無しさん
2018/04/10(火) 15:14:24.81ID:M/3om7RN 姉VBAのリリースはよ(´・ω・`)b
644デフォルトの名無しさん
2018/04/10(火) 18:59:46.71ID:nvaLZrjf >>639
ここで聞くこともネットで調べる事の一つ
ここで聞くこともネットで調べる事の一つ
645デフォルトの名無しさん
2018/04/10(火) 19:03:28.83ID:v03YChI+ 自分がログインした環境で開く全てのブックに右クリックメニューを追加する方法教えて
646デフォルトの名無しさん
2018/04/10(火) 19:11:15.95ID:IhLaWa2X googleはエスパーしてくれないからな。ここなら大体何をやりたいか汲んで答えてくれるだろうと。
オレなら、まずジュンク堂に行ってエクセル関連本を片っ端から立ち読みして自分の欲しているモノが書いてある
本を買うね。その結果、「なんだ、簡単じゃねえか本買って損した」となったとしてもそれが血になり肉となるって事だよな。
オレなら、まずジュンク堂に行ってエクセル関連本を片っ端から立ち読みして自分の欲しているモノが書いてある
本を買うね。その結果、「なんだ、簡単じゃねえか本買って損した」となったとしてもそれが血になり肉となるって事だよな。
647デフォルトの名無しさん
2018/04/10(火) 19:31:57.73ID:xK9q0OHZ バカだからエクセル本を読むのかエクセル本を読んだからバカになったのか
それが問題だ
それが問題だ
648デフォルトの名無しさん
2018/04/10(火) 20:18:58.96ID:IhLaWa2X649デフォルトの名無しさん
2018/04/10(火) 20:51:24.91ID:BQLlMX/b650デフォルトの名無しさん
2018/04/10(火) 20:57:33.15ID:HFEk8tOo そもそもVBAの質問じゃないし
VBAの意味すらわからん馬鹿か、無視して書き込んでくる奴なんだろ
VBAの意味すらわからん馬鹿か、無視して書き込んでくる奴なんだろ
651デフォルトの名無しさん
2018/04/10(火) 22:56:03.73ID:xK9q0OHZ >>647
今回は「バカだからエクセル本を読んだ」が正解の模様
今回は「バカだからエクセル本を読んだ」が正解の模様
652↑
2018/04/11(水) 03:04:58.26ID:VWbEhKN2 貧乏バカチョンキムジジイ
653デフォルトの名無しさん
2018/04/11(水) 07:57:48.69ID:Mg2+VUZu ところで、VBAのPython対応っていつからの話なの?
654デフォルトの名無しさん
2018/04/11(水) 08:03:17.65 >>653
2045年から
2045年から
655デフォルトの名無しさん
2018/04/11(水) 08:07:42.93ID:xXxwVMfw 機械学習でpython3やりまくってるワシは生き残れるのかのう?
ちなみに丙午です
ちなみに丙午です
656デフォルトの名無しさん
2018/04/11(水) 18:17:41.89ID:e7qNRsJ3 >>645
アドインとCustomUI勉強してみな
アドインとCustomUI勉強してみな
657デフォルトの名無しさん
2018/04/12(木) 01:31:14.47ID:fKA+nAAm 最近VBAを触り始めて、言語と言われてる理由がなんとなく分かったんだけど
これを習っていった時に、せけんて"難しい"と言われるのはどういう部分になるんだろう?
作業を
これを習っていった時に、せけんて"難しい"と言われるのはどういう部分になるんだろう?
作業を
658デフォルトの名無しさん
2018/04/12(木) 01:32:05.63ID:fKA+nAAm うーん、途中送信しちゃった
出直してきます
おやすみなさい
出直してきます
おやすみなさい
659デフォルトの名無しさん
2018/04/12(木) 01:34:09.14ID:QnlWRFoV 知恵遅れ馬鹿の日記帳かよ
660デフォルトの名無しさん
2018/04/12(木) 03:57:20.29ID:LcBy+9MJ >>657
プログラミングが初めてなら、何もかも難しいと感じるだろうし、
他のプログラミング言語が1つだけ使える人にとっては、その言語とVBAの文法などの違いにいちいち驚く
複数の言語が使える人なら、Excel固有のオブジェクト階層あたりを面倒と感じるんじゃないかな
プログラミングが初めてなら、何もかも難しいと感じるだろうし、
他のプログラミング言語が1つだけ使える人にとっては、その言語とVBAの文法などの違いにいちいち驚く
複数の言語が使える人なら、Excel固有のオブジェクト階層あたりを面倒と感じるんじゃないかな
661デフォルトの名無しさん
2018/04/12(木) 05:30:51.69ID:JtsPqpHF >>659
自己紹介ですかBasic爺WW
自己紹介ですかBasic爺WW
662デフォルトの名無しさん
2018/04/12(木) 07:02:33.85ID:UMpPjY/U 例えば一つのテキストファイルを扱う時のパス?アドレス?ってどうやって扱ってます?
2つ以上のモジュールで使う場合ってやっぱグローバル?
2つ以上のモジュールで使う場合ってやっぱグローバル?
663デフォルトの名無しさん
2018/04/12(木) 07:07:34.20664デフォルトの名無しさん
2018/04/12(木) 08:50:34.23ID:DGaLRDsY665デフォルトの名無しさん
2018/04/12(木) 11:40:14.81ID:LcBy+9MJ666デフォルトの名無しさん
2018/04/12(木) 13:54:18.13ID:MHmA0cf+667デフォルトの名無しさん
2018/04/12(木) 20:17:01.21ID:CCj06eku 質問です。
条件付き書式でやろうと思ってましたが、データが10,000行になったため、VBAを使いたいと思います。
例えば、
データ範囲をRange("A1:Z100")として、
A1に入力された数値が1だったらA1からZ1を赤色にする、
A1に入力された数値が2だったら黄色、
A1に入力された数値が3だったら青色、という風にするにはどうしたらよいでしょうか?
A列に入力される文字は1〜8の数値のみです。
コマンドボタンを押したときに一気に処理をしたいのですが、
A1が1ならA1からZ1の色を変える、というのがわかりません。
どなたかご教授いただけないでしょうか。
よろしくお願いします。
条件付き書式でやろうと思ってましたが、データが10,000行になったため、VBAを使いたいと思います。
例えば、
データ範囲をRange("A1:Z100")として、
A1に入力された数値が1だったらA1からZ1を赤色にする、
A1に入力された数値が2だったら黄色、
A1に入力された数値が3だったら青色、という風にするにはどうしたらよいでしょうか?
A列に入力される文字は1〜8の数値のみです。
コマンドボタンを押したときに一気に処理をしたいのですが、
A1が1ならA1からZ1の色を変える、というのがわかりません。
どなたかご教授いただけないでしょうか。
よろしくお願いします。
668デフォルトの名無しさん
2018/04/12(木) 20:26:52.62ID:ueTcTtIU >>667
全くわからないから全部教えろってこと?
全くわからないから全部教えろってこと?
669デフォルトの名無しさん
2018/04/12(木) 20:34:28.91ID:CCj06eku >>668
i = Ws2.Range("A10").End(xlDown).Row
With Worksheets("Sheet1").Range(Cells(9, 1), Cells(i, 28))
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$A9=1"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.TintAndShade = 0.399945066682943
.Color = 13408767
End With
という条件付き書式のコードを考えましたが、これ以外の方法をさがしています。
A1が1ならA1からZ1の色を変える、というのが本当にわからないので、
ヒントだけでもいただけないかと・・・。
i = Ws2.Range("A10").End(xlDown).Row
With Worksheets("Sheet1").Range(Cells(9, 1), Cells(i, 28))
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$A9=1"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.TintAndShade = 0.399945066682943
.Color = 13408767
End With
という条件付き書式のコードを考えましたが、これ以外の方法をさがしています。
A1が1ならA1からZ1の色を変える、というのが本当にわからないので、
ヒントだけでもいただけないかと・・・。
670デフォルトの名無しさん
2018/04/12(木) 21:15:46.98ID:JtsPqpHF >>669
よく、ネットや書籍で「マクロの記録で生成されたコードを基にほにゃららしよう」ってな記事を見かけるけど、
あんまり良くない方法な気がする。最初は退屈でも我慢してマトモな入門書を見ながら基礎をやった方がいい。
よく、ネットや書籍で「マクロの記録で生成されたコードを基にほにゃららしよう」ってな記事を見かけるけど、
あんまり良くない方法な気がする。最初は退屈でも我慢してマトモな入門書を見ながら基礎をやった方がいい。
671デフォルトの名無しさん
2018/04/12(木) 21:19:08.35ID:c/dN7gKJ 10万件以上のデータ処理にはアクセスを推奨
それぞれに得意分野があるのだから使い分けなさい
エクセルVBAがらアクセスデータを引っ張る
でデータをエクセル側で計算なり加工なり表なりをやるのが良い
それぞれに得意分野があるのだから使い分けなさい
エクセルVBAがらアクセスデータを引っ張る
でデータをエクセル側で計算なり加工なり表なりをやるのが良い
672デフォルトの名無しさん
2018/04/12(木) 21:36:24.97ID:CCj06eku673デフォルトの名無しさん
2018/04/12(木) 21:36:49.41ID:ueTcTtIU674デフォルトの名無しさん
2018/04/12(木) 23:53:14.20ID:J/s3hdBh ごらん。てwww
ソープのキモ客かよwwww
ソープのキモ客かよwwww
675デフォルトの名無しさん
2018/04/13(金) 00:00:04.74ID:5acpPh4/ メゾット君はソープとか行く上に嬢に対して「考えてごらん」とかリアルに言い出すのか。それはキモいな。
676デフォルトの名無しさん
2018/04/13(金) 00:08:44.43ID:HKlJ1iBx >>675←ごらんて言った覚えがあるソープ通www
677デフォルトの名無しさん
2018/04/13(金) 01:03:21.93ID:qS+KnG2r 風俗でなければ女性に相手してもらえないキモデブか
678デフォルトの名無しさん
2018/04/13(金) 01:12:37.40ID:yZAZeFsH ごらんと言われたからというわけではないですが、作ってみました。
Dim iro As Long
Workbooks("test.xlsm").Worksheets("sheet1").Activate
For iro = 10 To i
If Cells(iro, 1) = 1 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 33
ElseIf Cells(iro, 1) = 2 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 34
ElseIf Cells(iro, 1) = 3 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 35
ElseIf Cells(iro, 1) = 4 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 36
ElseIf Cells(iro, 1) = 5 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 37
ElseIf Cells(iro, 1) = 6 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 38
ElseIf Cells(iro, 1) = 7 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 39
ElseIf Cells(iro, 1) = 8 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 40
End If
Next iro
なんだか長いコードになってしまいました・・・。
すっきり出来ると良いのですけど、今はこれが限界。
ありがとうございました。
Dim iro As Long
Workbooks("test.xlsm").Worksheets("sheet1").Activate
For iro = 10 To i
If Cells(iro, 1) = 1 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 33
ElseIf Cells(iro, 1) = 2 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 34
ElseIf Cells(iro, 1) = 3 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 35
ElseIf Cells(iro, 1) = 4 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 36
ElseIf Cells(iro, 1) = 5 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 37
ElseIf Cells(iro, 1) = 6 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 38
ElseIf Cells(iro, 1) = 7 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 39
ElseIf Cells(iro, 1) = 8 Then
Range(Cells(iro, 1), Cells(iro, 28)).Interior.ColorIndex = 40
End If
Next iro
なんだか長いコードになってしまいました・・・。
すっきり出来ると良いのですけど、今はこれが限界。
ありがとうございました。
679デフォルトの名無しさん
2018/04/13(金) 02:00:10.76ID:0w2hy+Vf680デフォルトの名無しさん
2018/04/13(金) 06:43:49.41ID:YdugUaFV ごらんってソープ用語なの?
681デフォルトの名無しさん
2018/04/13(金) 07:43:37.15ID:bN+8cQpR $('tr:first > td').css('background-color','orange');
JavaScript のjQuery なら、これで、
表の1行目(tr)のすべての列(td)の、背景色を変更できる
JavaScript のjQuery なら、これで、
表の1行目(tr)のすべての列(td)の、背景色を変更できる
682デフォルトの名無しさん
2018/04/13(金) 09:50:34.75ID:qS+KnG2r >>681
で?馬鹿は黙っていればいいのに
で?馬鹿は黙っていればいいのに
683デフォルトの名無しさん
2018/04/13(金) 11:21:39.81ID:/3lEd5QR684デフォルトの名無しさん
2018/04/13(金) 11:53:44.26685デフォルトの名無しさん
2018/04/13(金) 12:01:28.69ID:rA4jw6Vb686デフォルトの名無しさん
2018/04/13(金) 12:06:28.55ID:/4JAUyBc >>683
メインモジュールのローカル変数としてユーザー定義型のインスタンスを作って関数へ参照渡しするんだけど
シートモジュールからの参照はできないかな?(やったことないので何も言えない)
ユーザーフォームに参照させる方法はインスタンス作ってそのメンバー変数に参照を渡すように作れば良い
メインモジュールのローカル変数としてユーザー定義型のインスタンスを作って関数へ参照渡しするんだけど
シートモジュールからの参照はできないかな?(やったことないので何も言えない)
ユーザーフォームに参照させる方法はインスタンス作ってそのメンバー変数に参照を渡すように作れば良い
687デフォルトの名無しさん
2018/04/13(金) 12:08:15.06ID:/4JAUyBc688デフォルトの名無しさん
2018/04/13(金) 12:14:57.86ID:aDeKUDTr689デフォルトの名無しさん
2018/04/13(金) 12:17:07.86ID:aDeKUDTr おっと
× シートモジュールの
○ モジュールの
× シートモジュールの
○ モジュールの
690デフォルトの名無しさん
2018/04/13(金) 12:28:49.89ID:hu4msYuE691デフォルトの名無しさん
2018/04/13(金) 13:08:18.95ID:aDeKUDTr そんなことないだろう
並列化が進んでますます大事になってるような気がするんだが
並列化が進んでますます大事になってるような気がするんだが
692デフォルトの名無しさん
2018/04/13(金) 14:34:26.06ID:uRBQbu6P .xlsxでVBAを使う方法を教えろ。
仕方なくワークシート関数で書いたら長過ぎると文句を言われる。ゲイツ氏ね。
仕方なくワークシート関数で書いたら長過ぎると文句を言われる。ゲイツ氏ね。
693デフォルトの名無しさん
2018/04/13(金) 15:29:36.69ID:aDeKUDTr ゲイツ言う時点で老害
694デフォルトの名無しさん
2018/04/13(金) 17:03:22.93ID:YdugUaFV Windowsを作ったビルゲイツは人類史上最大の貢献者なのは間違いない
貴方も恩恵を受けている
貴方も恩恵を受けている
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★4 [ぐれ★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 【大分】佐賀関で大規模火災、170棟以上が延焼中 70代男性1人と連絡取れず [ぐれ★]
- 【サッカー】U-17日本代表、激闘PK戦制す 北朝鮮撃破で6大会ぶり8強入り U17W杯 [久太郎★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- アンケート調査で「高市発言は問題なし」 93.5%wwwwwwwwwwwwwwwwwwwwwwwww [279254606]
- 寝癖ってどうしたらつかなくなるんや?
- 自閉症が「んなっしょい」と連呼するお🏡
- 【画像】エロい一般漫画はなぜこんなに抜けるのか
- BTSのバラエティ面白すぎワロタ
- 自民党議員「高市は先人が築き上げた日中関係を壊した。外務省が謝罪に言ってるが自分で責任を取れ」 [834922174]
