!extend:checked:vvvvv:1000:512
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※前スレ
Excel VBA 質問スレ Part62
https://mevius.5ch.net/test/read.cgi/tech/1561303297/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
Excel VBA 質問スレ Part63
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ d3d0-EPXH)
2019/09/16(月) 19:34:59.04ID:emfTAhXr0282デフォルトの名無しさん (ワッチョイ 9fe0-o74w)
2019/10/15(火) 00:02:27.41ID:0b9bW6T40 >>279
どういった表示がされて、実際に欲しい情報とどこが違うでしょうか?
Range("D:L")をken4で完全一致検索をかけ、最初に見つかったセルの行番号を取得
その行のC列セルの値をsiriaruに代入
という点ではプログラムに間違いはありません
どういった表示がされて、実際に欲しい情報とどこが違うでしょうか?
Range("D:L")をken4で完全一致検索をかけ、最初に見つかったセルの行番号を取得
その行のC列セルの値をsiriaruに代入
という点ではプログラムに間違いはありません
283デフォルトの名無しさん (アークセー Sxcb-FpGY)
2019/10/15(火) 00:30:22.92ID:i09LlRYux >>280
その通り
そのようにすれば、Diaryのインスタンス集合全体に対してpIDの存在確認をすることも出来るし、pID, dIDという2つのプロパティ値を使って目的のDiaryオブジェクトを取り出すこともできる
その通り
そのようにすれば、Diaryのインスタンス集合全体に対してpIDの存在確認をすることも出来るし、pID, dIDという2つのプロパティ値を使って目的のDiaryオブジェクトを取り出すこともできる
284デフォルトの名無しさん (オッペケ Srcb-FpGY)
2019/10/15(火) 04:19:47.75ID:/i2LKWgur >>279
siriaru=ws_siriaru.Range("C" & rng.Row).Value
siriaru=ws_siriaru.Range("C" & rng.Row).Value
285デフォルトの名無しさん (アークセー Sxcb-FpGY)
2019/10/15(火) 08:12:41.36ID:/HnZFUztx >>279
siriaruに値を代入するときに参照しているシートがシリアルのシートじゃなくて別シートになってると思う
siriaru = ws_siriaru.Range("C" & rng.Row).Value
に変えたらうまくいくのでは
siriaruに値を代入するときに参照しているシートがシリアルのシートじゃなくて別シートになってると思う
siriaru = ws_siriaru.Range("C" & rng.Row).Value
に変えたらうまくいくのでは
286デフォルトの名無しさん (アウアウウー Sa5b-ueyd)
2019/10/15(火) 18:45:11.44ID:opa9jcIha >>270
close もopenと同じ番号のnNo によ
close もopenと同じ番号のnNo によ
287デフォルトの名無しさん (オッペケ Srcb-jOzB)
2019/10/15(火) 21:12:27.40ID:OH7oWYO6r >>236
最初からVariantに入れるのが正解では?
最初からVariantに入れるのが正解では?
288デフォルトの名無しさん (アークセー Sxcb-FpGY)
2019/10/15(火) 21:28:52.40ID:NB8YI5GFx >>287
Variant型は便利だけどRangeオブジェクトを突っ込むためだけの変数で使用するにはねぇ
実際のデータ型を明示しないぶんコードが読みにくくなるしコーティング時にインテリセンスも利かなかったりとデメリットの方が目立つ
実行時エラーの原因って感じ
Variant型は便利だけどRangeオブジェクトを突っ込むためだけの変数で使用するにはねぇ
実際のデータ型を明示しないぶんコードが読みにくくなるしコーティング時にインテリセンスも利かなかったりとデメリットの方が目立つ
実行時エラーの原因って感じ
289デフォルトの名無しさん (ワッチョイ bfad-la4p)
2019/10/15(火) 22:36:34.14ID:LwOOuMgG0 リストの表示について
以下の表示の際最終行後ろのセルが空白だった場合最終行が表示されません。
なぜでしょうか?
LastRowではA列の最終行を指定しているので間違いではないと思うのですが
最終行のみ全てのセルに数値を入れていないと最終行に反映されないみたいです;。
With ws_kiki
LastRow = .Cells(Rows.Count, 1).End(xlUp).Row
myData = .Range(.Cells(1, 1), .Cells(Rows.Count, 13).End(xlUp)).Value
End With
With list_ken
.ColumnCount = 13
.ColumnWidths = "20;60;50;50;50;70;70;50;50;50;50;50"
.List = myData
以下の表示の際最終行後ろのセルが空白だった場合最終行が表示されません。
なぜでしょうか?
LastRowではA列の最終行を指定しているので間違いではないと思うのですが
最終行のみ全てのセルに数値を入れていないと最終行に反映されないみたいです;。
With ws_kiki
LastRow = .Cells(Rows.Count, 1).End(xlUp).Row
myData = .Range(.Cells(1, 1), .Cells(Rows.Count, 13).End(xlUp)).Value
End With
With list_ken
.ColumnCount = 13
.ColumnWidths = "20;60;50;50;50;70;70;50;50;50;50;50"
.List = myData
290デフォルトの名無しさん (ワッチョイ f77c-h29T)
2019/10/15(火) 22:58:43.53ID:Nq3iWAMG0 >>289
M列で値が入ってる一番下のセルまでが範囲のようだが
M列で値が入ってる一番下のセルまでが範囲のようだが
291デフォルトの名無しさん (アークセー Sxcb-FpGY)
2019/10/15(火) 23:33:50.79ID:NB8YI5GFx >>289
あなたsiriaruの人でしょ
もういい加減お金払って誰かに教えてもらうか、MSDNのVBAのリファレンスを読み込んできちんと勉強すべきだとおもうよ
会社で使ってるマクロのコードベタ貼りしてるのも本当に宜しくない
今回の問題は、せっかくLastRowにA列の使用セルの最終行の行インデックスを格納しているのに、myDataに入れる値のセル範囲指定でそのLastRowの値を使っていないことが原因でしょ
自分の頭をちゃんと使って書いてる?
myData = .Range(.Cells(1, 1), .Cells(LastRow, 13)).Value
と書き直せば終わり
あなたsiriaruの人でしょ
もういい加減お金払って誰かに教えてもらうか、MSDNのVBAのリファレンスを読み込んできちんと勉強すべきだとおもうよ
会社で使ってるマクロのコードベタ貼りしてるのも本当に宜しくない
今回の問題は、せっかくLastRowにA列の使用セルの最終行の行インデックスを格納しているのに、myDataに入れる値のセル範囲指定でそのLastRowの値を使っていないことが原因でしょ
自分の頭をちゃんと使って書いてる?
myData = .Range(.Cells(1, 1), .Cells(LastRow, 13)).Value
と書き直せば終わり
292デフォルトの名無しさん (ワッチョイ f77c-h29T)
2019/10/16(水) 00:02:02.46ID:TVv1yadl0 この人の問題は質問内容よりも質問文が意味不明なこと
状況を全く何も知らない相手に説明するということを考えながら質問文を書くようにしよう
状況を全く何も知らない相手に説明するということを考えながら質問文を書くようにしよう
293デフォルトの名無しさん (アークセー Sxcb-FpGY)
2019/10/16(水) 00:19:19.45ID:GI0GqC4Qx こういう構造的思考力のない人がコピペ&コピペで作り上げた野良マクロが企業の負債になっていくんだよね
294デフォルトの名無しさん (ワッチョイ 9f4b-x3kW)
2019/10/16(水) 00:30:12.53ID:4U9etGee0 ワークシートのスクリーンショットとか図で説明してもらわないと訳がわからない
295デフォルトの名無しさん (ワッチョイ 9f4f-aOdU)
2019/10/16(水) 07:23:15.57ID:Qp+et4KT0 .Net系もやってる人に質問です
列挙体に属性付けて指定すると数値の他に定義した文字列返す方法があると思うんですけど
アレをVBAで行う方法は有りますか?
Constで定義すれば出来ないことは無いんですがなんかダサくて・・・
列挙体に属性付けて指定すると数値の他に定義した文字列返す方法があると思うんですけど
アレをVBAで行う方法は有りますか?
Constで定義すれば出来ないことは無いんですがなんかダサくて・・・
296デフォルトの名無しさん (アークセー Sxcb-FpGY)
2019/10/16(水) 08:23:24.91ID:GI0GqC4Qx >>295
構造体配列とかクラスとかで擬似的に再現するしかないんじゃないの
構造体配列とかクラスとかで擬似的に再現するしかないんじゃないの
297デフォルトの名無しさん (アウアウウー Sa5b-Cvo3)
2019/10/16(水) 08:32:09.52ID:M09TXdK2a298デフォルトの名無しさん (ドコグロ MM8b-Kkga)
2019/10/16(水) 12:35:11.58ID:IY04c/q/M299295 (ササクッテロ Spcb-aOdU)
2019/10/16(水) 12:54:37.89ID:swoRisr+p >>296
そのためにクラスを作るとVBAの場合はひとクラス1モジュールファイルを切らないといけないし、
フォルダ分けも出来ないので、クラスを作る方法は後々クラスファイルが煩雑になる可能性があるのでやめておきます。
構造体や配列を使うのは少し大掛かりな気もしますが、お陰で何となくイメージがわきました。
DictionaryとかCollectionとかのValueペアのオブジェクトを使って、key側にenumで使用している番号、
Value側に文字列を設定して、enumに紐付けてやるような感じでやろうかなと。
ただ、修正が入るときに手間が掛かるようだとあまり意味がないのでその辺の構成は気をつけて作るような
感じですかね。ありがとうございました。
>>297
どんな言語だろうと自分なりに構成を考えて作っていくのは大事だと思いますよ。
今回の件は無理して作る程のものではありませんが
きちんと部品化しておけばまた違った局面で使うことが出来るので、
自分のためにも、引き継ぐ人のためにも大事だと思います。それはどの言語でも同じでしょう。
そのためにクラスを作るとVBAの場合はひとクラス1モジュールファイルを切らないといけないし、
フォルダ分けも出来ないので、クラスを作る方法は後々クラスファイルが煩雑になる可能性があるのでやめておきます。
構造体や配列を使うのは少し大掛かりな気もしますが、お陰で何となくイメージがわきました。
DictionaryとかCollectionとかのValueペアのオブジェクトを使って、key側にenumで使用している番号、
Value側に文字列を設定して、enumに紐付けてやるような感じでやろうかなと。
ただ、修正が入るときに手間が掛かるようだとあまり意味がないのでその辺の構成は気をつけて作るような
感じですかね。ありがとうございました。
>>297
どんな言語だろうと自分なりに構成を考えて作っていくのは大事だと思いますよ。
今回の件は無理して作る程のものではありませんが
きちんと部品化しておけばまた違った局面で使うことが出来るので、
自分のためにも、引き継ぐ人のためにも大事だと思います。それはどの言語でも同じでしょう。
300デフォルトの名無しさん (ドコグロ MM9b-Cvo3)
2019/10/16(水) 13:35:11.75ID:QJqyol2eM 引き継ぎを考えるなら郷に入れば郷に従えで普通にプレーンに書いた方がいい
VBAに限ったことではないけど、変なオナニーされるのが一番迷惑なんだよ
VBAに限ったことではないけど、変なオナニーされるのが一番迷惑なんだよ
301デフォルトの名無しさん (アウアウエー Sadf-tJKS)
2019/10/16(水) 18:05:45.54ID:vKUJ5JTra >>297
なんでここに居るん?
なんでここに居るん?
302デフォルトの名無しさん (アウアウウー Sa5b-ueyd)
2019/10/16(水) 18:50:39.66ID:QVKO1shPa >>295
ダサくてもそれが今の実力だからな
ダサくてもそれが今の実力だからな
303デフォルトの名無しさん (ワッチョイ 9fda-OHYr)
2019/10/16(水) 19:41:40.73ID:3AmZTcsu0 >>295
それは.NetでExcelを動かせばいいんじゃ・・。
それは.NetでExcelを動かせばいいんじゃ・・。
304デフォルトの名無しさん (アークセー Sxcb-FpGY)
2019/10/16(水) 22:11:30.10ID:Y2Xm51x3x >>299
値のペアを返す参照構造を作りたいんだったらワークシートを素直に使ってハッシュテーブルで運用した方がメンテ工数が少ないのでは
ワークシートはGUI化された多次元配列なのでね
セルの値の読み書きでイベントハンドラに制御が渡るのが嫌なら別だが
値のペアを返す参照構造を作りたいんだったらワークシートを素直に使ってハッシュテーブルで運用した方がメンテ工数が少ないのでは
ワークシートはGUI化された多次元配列なのでね
セルの値の読み書きでイベントハンドラに制御が渡るのが嫌なら別だが
305デフォルトの名無しさん (ワッチョイ 5701-TO0X)
2019/10/16(水) 22:19:50.46ID:IiLmkjOX0 フィルタされたデータをシート上で複数繋がった状態で選択したとする。その場合にそれら『のみ』を取得することはできるんだろか?教えていただきたいです。
バージョンはexcel2016です。
例)
以下がフィルタされたセル。
A1←選択
A4←選択
A5
上の場合にA1とA4のみを取得する。A2とA3は取得しない。
バージョンはexcel2016です。
例)
以下がフィルタされたセル。
A1←選択
A4←選択
A5
上の場合にA1とA4のみを取得する。A2とA3は取得しない。
306デフォルトの名無しさん (アークセー Sxcb-FpGY)
2019/10/16(水) 22:43:21.53ID:Y2Xm51x3x フィルタ抽出されたセル範囲だけを取得したいなら、
Range("A1:A5").SpecialCells(xlCellTypeVisible).Select
の一行で終わると思う
Range.SpecialCellsプロパティが可視セルだけを返すよう、引数に列挙定数xlCellTypeVisibleを渡せばいい
Range("A1:A5")のフィルタ範囲は必要に応じて変えてね
Range("A1:A5").SpecialCells(xlCellTypeVisible).Select
の一行で終わると思う
Range.SpecialCellsプロパティが可視セルだけを返すよう、引数に列挙定数xlCellTypeVisibleを渡せばいい
Range("A1:A5")のフィルタ範囲は必要に応じて変えてね
307デフォルトの名無しさん (ワッチョイ bfad-la4p)
2019/10/16(水) 23:52:50.60ID:e5YHiPLP0 >>289です。
わぉ!辛辣ですね。こちらで聞いて大分やりたいことが出来ましたので
後は自分で考えていきます。
参考書を聞きかじってインターネットからまるまるパクったコードをデバックしまくって改造
していきます。
ちなみに今回のコードは
LastRow = .Cells(Rows.Count, 1).End(xlUp).Row
myData = .Range(.Cells(1, 1), .Cells(Rows.Count, 13).End(xlUp)).Value
これが正しいコードでした。
myData = .Range(.Cells(LastRow, 1), .Cells(1, 13).End(xlUp)).Value
最終列の最終行を取得してたのでそこが空白だと最終列が反映されないことが判明しました
わぉ!辛辣ですね。こちらで聞いて大分やりたいことが出来ましたので
後は自分で考えていきます。
参考書を聞きかじってインターネットからまるまるパクったコードをデバックしまくって改造
していきます。
ちなみに今回のコードは
LastRow = .Cells(Rows.Count, 1).End(xlUp).Row
myData = .Range(.Cells(1, 1), .Cells(Rows.Count, 13).End(xlUp)).Value
これが正しいコードでした。
myData = .Range(.Cells(LastRow, 1), .Cells(1, 13).End(xlUp)).Value
最終列の最終行を取得してたのでそこが空白だと最終列が反映されないことが判明しました
308デフォルトの名無しさん (ワッチョイ 237c-HAen)
2019/10/17(木) 01:09:44.53ID:QyNdzX/10 >>307
間違ってるけど…
間違ってるけど…
309デフォルトの名無しさん (アークセー Sx47-vS/Z)
2019/10/17(木) 01:12:20.23ID:cDk85Tz1x >>307
読んでて頭痛のするような酷い文章だな
デバックじゃなくてデバッグだろ
しかも単なるコード改変のことをデバッグとか言ってるしさ
本気でデバッグしなきゃならないときにスキルのないこういうコピペコーダーは何の役にも立たないのに
会社の資産であるコードをこんな掲示板に晒しといて何やってんだか
読んでて頭痛のするような酷い文章だな
デバックじゃなくてデバッグだろ
しかも単なるコード改変のことをデバッグとか言ってるしさ
本気でデバッグしなきゃならないときにスキルのないこういうコピペコーダーは何の役にも立たないのに
会社の資産であるコードをこんな掲示板に晒しといて何やってんだか
310デフォルトの名無しさん (アークセー Sx47-vS/Z)
2019/10/17(木) 01:14:14.21ID:cDk85Tz1x >>307
しかもコード間違ってるし
しかもコード間違ってるし
311デフォルトの名無しさん (ワッチョイ 1ead-b2ak)
2019/10/17(木) 01:19:38.31ID:KClIintl0312デフォルトの名無しさん (アークセー Sx47-vS/Z)
2019/10/17(木) 01:23:29.50ID:cDk85Tz1x313デフォルトの名無しさん (ワッチョイ 237c-HAen)
2019/10/17(木) 01:26:24.43ID:QyNdzX/10 インターネットからまるまるパクることを1から自分で作るとは言わない
314デフォルトの名無しさん (アークセー Sx47-vS/Z)
2019/10/17(木) 01:28:05.18ID:cDk85Tz1x 控え目に言ってアホだよな
315デフォルトの名無しさん (アウアウウー Sa43-pYNj)
2019/10/17(木) 07:12:10.84ID:f3ZcAy7Ha vbaの話で別の言語とか出してマウント取りたい人って何なんだろうね
職場の同僚も大変そうw
職場の同僚も大変そうw
316デフォルトの名無しさん (アークセー Sx47-vS/Z)
2019/10/17(木) 07:30:47.90ID:cDk85Tz1x 何か心に刺さったのかな?
他言語持ち出されたときにマウント取られたと思うのは大抵そう受け取る側に問題があるぞ
他言語持ち出されたときにマウント取られたと思うのは大抵そう受け取る側に問題があるぞ
317デフォルトの名無しさん (ササクッテロ Sp47-F9Df)
2019/10/17(木) 08:03:49.72ID:p8i0Yvjup318デフォルトの名無しさん (ドコグロ MM32-i14O)
2019/10/17(木) 08:25:30.37ID:kDxfJkPvM 前提もなしに>>312みたいなこと書くやつは要らんっていう話だろ
319デフォルトの名無しさん (ワントンキン MM97-+Ykt)
2019/10/17(木) 08:36:06.38ID:GRl5SZlQM 結局なんらかの形で表データを閲覧するならエクセルで閉じた方が楽だなと思う
320デフォルトの名無しさん (ワッチョイ e36d-S3Tg)
2019/10/17(木) 10:14:17.57ID:V7Fv8DAn0 結局、表入力が簡単で確実なんだよな
なんつか心配がいらない
処理はpythonのほうが楽だがエクセル
ファイルのみで管理できるってことも含め
総合的にはVBAいいんだよね 雑な意味で
データと処理が一つにまとまってるんで
オブジャクト思考的ってか
なんつか心配がいらない
処理はpythonのほうが楽だがエクセル
ファイルのみで管理できるってことも含め
総合的にはVBAいいんだよね 雑な意味で
データと処理が一つにまとまってるんで
オブジャクト思考的ってか
321デフォルトの名無しさん (ワッチョイ 16da-S3Tg)
2019/10/17(木) 10:31:18.04ID:fkyJRw1v0 発音に「ャ」の要素はないかと。
322デフォルトの名無しさん (ワッチョイ e36d-S3Tg)
2019/10/17(木) 10:39:10.24ID:V7Fv8DAn0 API呼び出せるんだから
大概のことはVBAでどうにか
なってしまうんだよな。小さい会社、つまり
会社の9割以上はVBA程度で
十分なんだよな まあVBAがおもちゃで
なくてはならないって立場は分からんでもないがw
大概のことはVBAでどうにか
なってしまうんだよな。小さい会社、つまり
会社の9割以上はVBA程度で
十分なんだよな まあVBAがおもちゃで
なくてはならないって立場は分からんでもないがw
323デフォルトの名無しさん (ワッチョイ 2701-Maid)
2019/10/17(木) 15:37:20.74ID:e7g1u0+T0 エクセルの表から始まる作業ならVBAがいいとおもうよ
例えば客からの電話注文をエクセルに一度まとめていて、それを管理画面に反映させる作業とか・・・
スクリプトを動かす必要のないサイトならブラウザ開かずにボタンポチで完了するし
(いつもちゃんと登録されてるのか不安がられるが)
例えば客からの電話注文をエクセルに一度まとめていて、それを管理画面に反映させる作業とか・・・
スクリプトを動かす必要のないサイトならブラウザ開かずにボタンポチで完了するし
(いつもちゃんと登録されてるのか不安がられるが)
324デフォルトの名無しさん (ドコグロ MMea-tIsl)
2019/10/17(木) 16:07:50.37ID:gr44XWYWM 俺ならそういうのはGoogle Spreadsheet使うかな
一旦ローカルに置くのは無駄
一旦ローカルに置くのは無駄
325デフォルトの名無しさん (ワッチョイ 2701-Maid)
2019/10/17(木) 16:46:25.92ID:e7g1u0+T0 >>324
みんなエクセルで管理したがるので
みんなエクセルで管理したがるので
326デフォルトの名無しさん (ササクッテロ Sp47-F9Df)
2019/10/17(木) 18:09:32.12ID:p8i0Yvjup まぁVBAやって育ってくるとその内
VB.Netとかやるようになって
Web系を扱うようになると
ASP.Netとかやる機会も出て来るから
SQLと同じようにHTMLとかCSSとか
JavaScriptとか必要に迫られて
片手間で覚えるようになるから大丈夫。
別に今のままで良ければそのまま
VBAやってればいいわけだし。
VB.Netとかやるようになって
Web系を扱うようになると
ASP.Netとかやる機会も出て来るから
SQLと同じようにHTMLとかCSSとか
JavaScriptとか必要に迫られて
片手間で覚えるようになるから大丈夫。
別に今のままで良ければそのまま
VBAやってればいいわけだし。
327デフォルトの名無しさん (ワッチョイ 9f94-vCPd)
2019/10/17(木) 19:58:00.62ID:EDPspb6d0 VBAの最大のデメリットは何でもVBAでやろうとする脳になる事
こんな化石のような言語でやるのは苦行そのもの
今更覚える意味すらない
こんな化石のような言語でやるのは苦行そのもの
今更覚える意味すらない
328デフォルトの名無しさん (ワッチョイ 9242-U7Hu)
2019/10/17(木) 20:00:11.81ID:2ydjDz1a0 そんな意味のないもののスレをわざわざ見に来る意味はあるの
329デフォルトの名無しさん (ワッチョイ 9ec6-GDtP)
2019/10/17(木) 20:41:45.44ID:j32AuqLC0330デフォルトの名無しさん (ワッチョイ f335-S3Tg)
2019/10/17(木) 20:55:38.52ID:a6vhi3mO0 時代遅れ感があるのと、どう書くべきかが分かりにくいのと、エラーメッセージがクソなのを除けばそこまででもないな
シートモジュールやブックモジュールが邪魔すぎる。標準モジュールだけで良かった
そしてエラーメッセージの「修正:式」はあまりに不親切。ここはアップデートかけてくれてもいいのに
シートモジュールやブックモジュールが邪魔すぎる。標準モジュールだけで良かった
そしてエラーメッセージの「修正:式」はあまりに不親切。ここはアップデートかけてくれてもいいのに
331デフォルトの名無しさん (アウアウウー Sa43-hJjz)
2019/10/17(木) 21:02:24.20ID:9rn0DJ5qa 他の言語と比較すればマトモだと思う
332デフォルトの名無しさん (ワッチョイ 92da-GDtP)
2019/10/17(木) 21:18:35.64ID:uSN2w5EG0 >どう書くべきかが分かりにくいのと
それは言語の問題じゃない。
英語の文法はわかりにくい → そりゃお前が日本人だからそう思うだけだろ!
日本語の文法はわかりにくい → そりゃお前がアメリカ人だからそう思うだけだろ!
それは言語の問題じゃない。
英語の文法はわかりにくい → そりゃお前が日本人だからそう思うだけだろ!
日本語の文法はわかりにくい → そりゃお前がアメリカ人だからそう思うだけだろ!
333デフォルトの名無しさん (ワッチョイ f335-S3Tg)
2019/10/17(木) 21:22:30.75ID:a6vhi3mO0 出ました定義したがりw
334デフォルトの名無しさん (ワッチョイ 92da-GDtP)
2019/10/17(木) 22:03:59.43ID:uSN2w5EG0335デフォルトの名無しさん (アークセー Sx47-vS/Z)
2019/10/17(木) 22:53:38.34ID:lelQayoPx シートモジュールとブックモジュールはただのクラスモジュールだからなぁ
コンストラクタとデストラクタがないぶんシートモジュールだけが特殊だが
コンストラクタとデストラクタがないぶんシートモジュールだけが特殊だが
336デフォルトの名無しさん (ワッチョイ f335-S3Tg)
2019/10/17(木) 23:08:12.09ID:a6vhi3mO0 そう、オブジェクトが何か分かっていれば何の問題もない
しかし現実問題、Excelを使うのは一般事務。setっていつ使うのかなかなか理解できない層が中心なのだ
しかし現実問題、Excelを使うのは一般事務。setっていつ使うのかなかなか理解できない層が中心なのだ
337デフォルトの名無しさん (アークセー Sx47-vS/Z)
2019/10/17(木) 23:49:25.80ID:lelQayoPx implementsステートメントで組み込みのワークシートオブジェクトのインターフェースを継承すればシート用モジュールになります、って感じの仕組みならよかったよな
ユーザー定義クラスだって属性宣言を先頭に持って来ればクラス用モジュールになりますって感じの扱いで良かったし
ユーザー定義クラスだって属性宣言を先頭に持って来ればクラス用モジュールになりますって感じの扱いで良かったし
338デフォルトの名無しさん (ワッチョイ de10-u2an)
2019/10/18(金) 00:09:11.06ID:RulO09Tc0 オマイラのスーパーテクを俺に継承してくれや。
339デフォルトの名無しさん (アウアウウー Sa43-tIsl)
2019/10/18(金) 01:12:13.81ID:Kn6PgWdna340デフォルトの名無しさん (アークセー Sx47-vS/Z)
2019/10/18(金) 01:29:19.13ID:sk0uHZY+x PowerQueryとかPowerPivotとか標準的なExcelの組み込み機能で出来る作業をVBAでやってるのを見るけどああいうのも時間の無駄だわな
341デフォルトの名無しさん (ワッチョイ f335-S3Tg)
2019/10/18(金) 06:28:43.63ID:rwfK/g890 vbaで何でも出来るから全部vbaでやる・・・それがシンプルでカッコイイ事だと思いこんでいた時期がありました
342デフォルトの名無しさん (ワッチョイ de10-4MLx)
2019/10/18(金) 08:24:07.64ID:RulO09Tc0 武器を持った奴が相手ならVBAを使わざるを得ない
343デフォルトの名無しさん (ワッチョイ de10-4MLx)
2019/10/18(金) 08:28:11.67ID:RulO09Tc0344デフォルトの名無しさん (ササクッテロル Sp47-5sgQ)
2019/10/18(金) 12:32:43.64ID:xgSV8V5dp >>343
そんなこと言わんと
VBAをとっとと卒業してC#辺りに入りなさいな。
他の言語も勉強するとVBAのコードの組み方もガラッと変わるよ。
例えば.Net系をやればクラスやインターフェースの理解がグッと深まるから
テスト項目も減らせる組み方が出来るし、変更点の改修も少ない組み方が出来るようになる。
そんなこと言わんと
VBAをとっとと卒業してC#辺りに入りなさいな。
他の言語も勉強するとVBAのコードの組み方もガラッと変わるよ。
例えば.Net系をやればクラスやインターフェースの理解がグッと深まるから
テスト項目も減らせる組み方が出来るし、変更点の改修も少ない組み方が出来るようになる。
345デフォルトの名無しさん (ワンミングク MM42-+Ykt)
2019/10/18(金) 12:35:35.40ID:YN+VnyL5M そういう所まで進みたい人とそうでも無い人がいるって事を理解しなよ
346デフォルトの名無しさん (ドコグロ MM32-tIsl)
2019/10/18(金) 12:45:18.66ID:dVFolCOsM >>345
どちらにせよVBAを極めても意味はないという帰結に違いはないな
どちらにせよVBAを極めても意味はないという帰結に違いはないな
347デフォルトの名無しさん (アウアウエー Saaa-1P7U)
2019/10/18(金) 12:47:17.38ID:as8acMuSa 本当にプログラミング好きな人はVBAじゃ満足しないだろ
VBAを極めるとはどういう状態かわかりませんが
VBAを極めるとはどういう状態かわかりませんが
348デフォルトの名無しさん (ワンミングク MM42-+Ykt)
2019/10/18(金) 12:55:00.41ID:YN+VnyL5M >>346
ちょっと理解出来ないです
ちょっと理解出来ないです
349デフォルトの名無しさん (ワッチョイ f345-UkKt)
2019/10/18(金) 14:34:31.34ID:C4vTbpVj0 2つ質問させてください
Sub Main()
Dim n As Long
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim ws1cell As Range
Dim r As Long
Set ws1 = Worksheets(1)
Set ws2 = Worksheets(Worksheets.Count)
n = ws1.Cells(Rows.Count, 5).End(xlUp).Row + 5
For r = 1 To ws2.Cells(Rows.Count, 5).End(xlUp).Row
Set ws1cell = ws1.Range("E:E").Find(ws2.Cells(r, 5).Value, lookat:=xlWhole)'項目名が違い、達成率が100%でない場合は開始日・終了日・達成率を更新
If ws1cell Is Nothing And ws2.Cells(r, 10) < 1 Then
ws1cell.Range(ws1.Cells(n, 8), ws1.Cells(n, 10)).Value = ws2.Range(ws2.Cells(r, 8), ws2.Cells(r, 10)).Value
n = n + 1
Else'達成度が進んだ場合は開始日・終了日・達成度を更新
If ws1cell.Value = ws2.Cells(r, 5).Value And ws1cell.Offset(0, 3) < ws2.Cells(r, 8) Then
ws1cell.Offset(0, 3) = ws2.Cells(r, 8)
ws1cell.Offset(0, 4) = ws2.Cells(r, 9)
ws1cell.Offset(0, 5) = ws2.Cells(r, 10)
End If
End If
Next r
End Sub
項目名が違う時にエラーが出てしまいます
If ws1cell is nothingの部分で変数を解放しているから問題なのかと考えていましたが、ws1cell = "" , 0に書き換えてもウォッチウィンドウで見ると
set ws1cellを通った後もnothingのままになっていました
setを通れば変数を定義出来ると思っていたのですが、どのようにすれば解決できますか?
よろしくお願いします
Sub Main()
Dim n As Long
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim ws1cell As Range
Dim r As Long
Set ws1 = Worksheets(1)
Set ws2 = Worksheets(Worksheets.Count)
n = ws1.Cells(Rows.Count, 5).End(xlUp).Row + 5
For r = 1 To ws2.Cells(Rows.Count, 5).End(xlUp).Row
Set ws1cell = ws1.Range("E:E").Find(ws2.Cells(r, 5).Value, lookat:=xlWhole)'項目名が違い、達成率が100%でない場合は開始日・終了日・達成率を更新
If ws1cell Is Nothing And ws2.Cells(r, 10) < 1 Then
ws1cell.Range(ws1.Cells(n, 8), ws1.Cells(n, 10)).Value = ws2.Range(ws2.Cells(r, 8), ws2.Cells(r, 10)).Value
n = n + 1
Else'達成度が進んだ場合は開始日・終了日・達成度を更新
If ws1cell.Value = ws2.Cells(r, 5).Value And ws1cell.Offset(0, 3) < ws2.Cells(r, 8) Then
ws1cell.Offset(0, 3) = ws2.Cells(r, 8)
ws1cell.Offset(0, 4) = ws2.Cells(r, 9)
ws1cell.Offset(0, 5) = ws2.Cells(r, 10)
End If
End If
Next r
End Sub
項目名が違う時にエラーが出てしまいます
If ws1cell is nothingの部分で変数を解放しているから問題なのかと考えていましたが、ws1cell = "" , 0に書き換えてもウォッチウィンドウで見ると
set ws1cellを通った後もnothingのままになっていました
setを通れば変数を定義出来ると思っていたのですが、どのようにすれば解決できますか?
よろしくお願いします
350デフォルトの名無しさん (ワッチョイ f345-UkKt)
2019/10/18(金) 14:35:51.85ID:C4vTbpVj0 改行エラーが出てしまったため2つに分けました
VBAを使い始めて1ヶ月弱なのですがC#でエクセルを操作出来るようになりたいと考えております
VBAで作ったプログラムを元にして、C#を学ぶ方法は無いでしょうか?
書き方が全然違うとの話を聞いたので、諦めて最初から覚えるしかないかと途方に暮れております
よろしくお願いします
VBAを使い始めて1ヶ月弱なのですがC#でエクセルを操作出来るようになりたいと考えております
VBAで作ったプログラムを元にして、C#を学ぶ方法は無いでしょうか?
書き方が全然違うとの話を聞いたので、諦めて最初から覚えるしかないかと途方に暮れております
よろしくお願いします
351デフォルトの名無しさん (ワッチョイ 92a2-r0zP)
2019/10/18(金) 14:58:09.86ID:irJy6XEP0 なんでvbaでできる事をいちいちC#でやろうとするか意味解らんよ
352デフォルトの名無しさん (スッップ Sd32-UkKt)
2019/10/18(金) 15:40:17.44ID:71CpEOK5d 今後C#を使う予定であれば、VBAで出来る事だとしてもC#を使う時間を増やした方が習得が早いと思ったからです
353デフォルトの名無しさん (ワッチョイ 1ef7-tmOE)
2019/10/18(金) 19:07:24.11ID:Kd4kiXAf0354デフォルトの名無しさん (スププ Sd32-YrLK)
2019/10/18(金) 19:07:29.23ID:7YrisXmNd 文法が全く違う言語だから何をどう頑張ろうがベースにはできない。
せいぜい同じ結果を出せるかどうかの演習材料にしかならんよ。
せいぜい同じ結果を出せるかどうかの演習材料にしかならんよ。
355デフォルトの名無しさん (ワッチョイ 237c-HAen)
2019/10/18(金) 19:11:29.96ID:vO06UtuM0 >>350
覚えるっていうか移植先の作法に従って書き換えるだけ
覚えるっていうか移植先の作法に従って書き換えるだけ
356デフォルトの名無しさん (ワッチョイ 1ef7-V+wO)
2019/10/18(金) 19:17:45.06ID:Kd4kiXAf0 >>349 書き直すけど
If ws1cell Is Nothing And ws2.Cells(r, 10) < 1 Then は
ws1cellがNothingのときじゃないと通らない。なのにそのあとでws1cell.Range〜とかws1cell.Offsetなんてやると当然エラーになる。
Not ws1cell Is Nothing みたいに反転させないと。
If ws1cell Is Nothing And ws2.Cells(r, 10) < 1 Then は
ws1cellがNothingのときじゃないと通らない。なのにそのあとでws1cell.Range〜とかws1cell.Offsetなんてやると当然エラーになる。
Not ws1cell Is Nothing みたいに反転させないと。
357デフォルトの名無しさん (ワンミングク MM42-+Ykt)
2019/10/18(金) 19:35:18.82ID:YN+VnyL5M セルがどういう時にnothingになるのか分かって条件に指定してるのか怪しい気がする
358デフォルトの名無しさん (ササクッテロル Sp47-5sgQ)
2019/10/18(金) 19:38:22.84ID:xgSV8V5dp >>350
VBAやって一ヶ月ならそのままVBAやっておけばいいよ。別に急いでるわけでもないんでしょ?
VBAやってツールの幾つかでも作って、コードがそらで書けるようになったらまずVB.Netをやる。
文法はそっくりだけど構成が違うし見たこともない命令も沢山あるから多分苦労すると思う。
でもここさえ乗り越えてしまえばObject指向の何たるかが大体解るようになるからそうしたらC#に入ればいいよ。
C#はVBA→VB.Netのときとは逆に構成がVB.Netとよく似ていて文法が違う。あと型が厳しい。
でも、ま、VB.Netを覚えてしまえばC#も7割方理解したって言えると思う。
何も手を着けてない状態なら最初からC#をやることを勧めるけど
折角VBA始めたんだから遠回りにはなるかも知れないけどそういう楽な方法もあるよ。
VBAやって一ヶ月ならそのままVBAやっておけばいいよ。別に急いでるわけでもないんでしょ?
VBAやってツールの幾つかでも作って、コードがそらで書けるようになったらまずVB.Netをやる。
文法はそっくりだけど構成が違うし見たこともない命令も沢山あるから多分苦労すると思う。
でもここさえ乗り越えてしまえばObject指向の何たるかが大体解るようになるからそうしたらC#に入ればいいよ。
C#はVBA→VB.Netのときとは逆に構成がVB.Netとよく似ていて文法が違う。あと型が厳しい。
でも、ま、VB.Netを覚えてしまえばC#も7割方理解したって言えると思う。
何も手を着けてない状態なら最初からC#をやることを勧めるけど
折角VBA始めたんだから遠回りにはなるかも知れないけどそういう楽な方法もあるよ。
359デフォルトの名無しさん (ドコグロ MMea-VRky)
2019/10/18(金) 20:19:32.44ID:L2N4rS5+M それ以前に>>349は
> 項目名が違う時にエラーが出てしまいます
じゃなくてどの行でどんなエラーが出てるのかを書けよ
ID:Kd4kiXAf0は超親切だからレスしてくれてるけど普通はスルーされて終わりだよ
> 項目名が違う時にエラーが出てしまいます
じゃなくてどの行でどんなエラーが出てるのかを書けよ
ID:Kd4kiXAf0は超親切だからレスしてくれてるけど普通はスルーされて終わりだよ
360デフォルトの名無しさん (ワッチョイ 6f02-UkKt)
2019/10/18(金) 21:48:21.62ID:/2Um4idM0361デフォルトの名無しさん (ワッチョイ 237c-HAen)
2019/10/18(金) 21:50:15.03ID:vO06UtuM0362デフォルトの名無しさん (アークセー Sx47-vS/Z)
2019/10/18(金) 23:10:26.23ID:3qufjhb3x >>361
もっと細かく言うとDimでやっているのは定義ではなく、あらかじめ定義されたデータ型の適用を宣言してその型に適合したメモリ領域を確保することなんだけどな
未知の型を宣言するとエンジン側で型検査できずにコンパイルエラーになることを考えたら分かる
もっと細かく言うとDimでやっているのは定義ではなく、あらかじめ定義されたデータ型の適用を宣言してその型に適合したメモリ領域を確保することなんだけどな
未知の型を宣言するとエンジン側で型検査できずにコンパイルエラーになることを考えたら分かる
363デフォルトの名無しさん (ワッチョイ 124f-5sgQ)
2019/10/18(金) 23:16:13.52ID:1ynBc/Lo0 >>360
そういう目的があるならまず覚えるべきはSQLだね
VBAだろうがJavaだろうが.Netだろうが
どの言語をやっていてもデータベースを扱う限り
SQLはまず使わないことがない。
ま、中にはEntityFreamworkなんてSQLを使わずにDBに同期してデータを
引っ張るなんて場合もあったりするけどSQLは最初の内に覚えておいて絶対損はしないよ。
そういう目的があるならまず覚えるべきはSQLだね
VBAだろうがJavaだろうが.Netだろうが
どの言語をやっていてもデータベースを扱う限り
SQLはまず使わないことがない。
ま、中にはEntityFreamworkなんてSQLを使わずにDBに同期してデータを
引っ張るなんて場合もあったりするけどSQLは最初の内に覚えておいて絶対損はしないよ。
364デフォルトの名無しさん (ドコグロ MM32-tIsl)
2019/10/18(金) 23:22:21.64ID:dVFolCOsM365デフォルトの名無しさん (ワッチョイ 124f-5sgQ)
2019/10/19(土) 00:34:54.51ID:UvKzTNAx0 >>364
そこは割り切り。
どうせどんな言語やってたってちょろっとしたツールを作るには
VBAでやった方が手っ取り早いことの方が多いんだから。
どの仕事場でも大概Excelは入っているしね。
それにVB系は癖が強いから他言語の習得を阻害するというのも
個人の適応能力やセンスによるものも大きいからちょっと何とも言えないし。
むしろ俺みたいに適応力やセンスが皆無なら
やれ構造化言語だ、object指向だ、関数型言語だって変わるたびにチンプンカンプンなところから始めるから
結局否応なくその言語に合わせることになるんだけどね。
そこは割り切り。
どうせどんな言語やってたってちょろっとしたツールを作るには
VBAでやった方が手っ取り早いことの方が多いんだから。
どの仕事場でも大概Excelは入っているしね。
それにVB系は癖が強いから他言語の習得を阻害するというのも
個人の適応能力やセンスによるものも大きいからちょっと何とも言えないし。
むしろ俺みたいに適応力やセンスが皆無なら
やれ構造化言語だ、object指向だ、関数型言語だって変わるたびにチンプンカンプンなところから始めるから
結局否応なくその言語に合わせることになるんだけどね。
366デフォルトの名無しさん (ワッチョイ 6bce-S3Tg)
2019/10/19(土) 02:56:34.09ID:Z3LWqSJp0 .netを始める上での壁は文法や型なんかより膨大なクラスを把握することだからVBでもC#でも手間は変わらん
しかも日々増殖したり仕様が変わったりするから手に負えない
しかも日々増殖したり仕様が変わったりするから手に負えない
367デフォルトの名無しさん (ワッチョイ f335-S3Tg)
2019/10/19(土) 05:58:33.57ID:4RrPMtib0368デフォルトの名無しさん (ワッチョイ 124f-5sgQ)
2019/10/19(土) 06:05:45.30ID:UvKzTNAx0 >>367
ちょい前までExcelに入るんじゃないかって噂で騒がれてたPython、あれ関数型言語だよ
ちょい前までExcelに入るんじゃないかって噂で騒がれてたPython、あれ関数型言語だよ
369デフォルトの名無しさん (ワッチョイ f335-S3Tg)
2019/10/19(土) 06:21:12.47ID:4RrPMtib0370デフォルトの名無しさん (ワッチョイ 124f-5sgQ)
2019/10/19(土) 06:47:40.57ID:UvKzTNAx0 うーん、なんて言うか
Microsoftが出してる言語、複数やったことがある人なら何となく知ってると思うんだけど
何か中途半端にとどめておくのが好きみたいな傾向があって、
例えばVBAや旧VB6なんかでもObject指向の概念は
取り入れてるんだけどインターフェースはあるけど
.Netでいう継承は出来ないとか
.Netでも関数型言語の概念は取り入れててlinqやrambda式が使えるけどデータ分析や機械学習が
出来ないって訳じゃないけど苦手だったり。
次に何か出るときはその変のことが統合されて
いい感じになったものが出るんだろうけど
多分次もその次に出て来る新しい概念を
中途半端に取り入れたところで落ち着くような
そんなことを繰り返すような気がするね。
Microsoftが出してる言語、複数やったことがある人なら何となく知ってると思うんだけど
何か中途半端にとどめておくのが好きみたいな傾向があって、
例えばVBAや旧VB6なんかでもObject指向の概念は
取り入れてるんだけどインターフェースはあるけど
.Netでいう継承は出来ないとか
.Netでも関数型言語の概念は取り入れててlinqやrambda式が使えるけどデータ分析や機械学習が
出来ないって訳じゃないけど苦手だったり。
次に何か出るときはその変のことが統合されて
いい感じになったものが出るんだろうけど
多分次もその次に出て来る新しい概念を
中途半端に取り入れたところで落ち着くような
そんなことを繰り返すような気がするね。
371デフォルトの名無しさん (ワッチョイ 1201-VRky)
2019/10/19(土) 06:54:51.77ID:a0xT/TLW0372デフォルトの名無しさん (ワッチョイ 124f-5sgQ)
2019/10/19(土) 07:39:52.38ID:UvKzTNAx0373デフォルトの名無しさん (アウアウエー Saaa-mdgP)
2019/10/19(土) 07:43:44.99ID:VlF8OMgza ここの人たちはどんなシステム作ろうとしてるんだ
事務処理をちょい効率化したい程度の簡単なプログラムならVBAが最高
事務処理をちょい効率化したい程度の簡単なプログラムならVBAが最高
374デフォルトの名無しさん (ワッチョイ 124f-5sgQ)
2019/10/19(土) 08:08:42.95ID:UvKzTNAx0 >>373
そうなんだよね。
よく「別言語の〜でやれば〜行で出来るのに」って
言う人がいるけどあれは違うと思う。
VBAは凄く間口が広い言語で
EXCELが有ればどこでも組める言語。
手軽だから何かをちょろっとやらせるには
非常に使い勝手のいい言語なんだよね。
特にExcelが絡んだときは。
間口が広いってことは初心者からお年寄りまで
誰にでも優しい言語だからそりゃ至らない部分も沢山あるけど
他の言語で簡単に出来る部分でExcelが苦手な部分を
どうやっていい感じに作りこんで行くかを考えるのもまた醍醐味。
例えばXNAとかでテトリス作った後でもう一回
じゃ、今度はVBAで作って見ようかなと思わせる
何かがある言語だと思う。
そうなんだよね。
よく「別言語の〜でやれば〜行で出来るのに」って
言う人がいるけどあれは違うと思う。
VBAは凄く間口が広い言語で
EXCELが有ればどこでも組める言語。
手軽だから何かをちょろっとやらせるには
非常に使い勝手のいい言語なんだよね。
特にExcelが絡んだときは。
間口が広いってことは初心者からお年寄りまで
誰にでも優しい言語だからそりゃ至らない部分も沢山あるけど
他の言語で簡単に出来る部分でExcelが苦手な部分を
どうやっていい感じに作りこんで行くかを考えるのもまた醍醐味。
例えばXNAとかでテトリス作った後でもう一回
じゃ、今度はVBAで作って見ようかなと思わせる
何かがある言語だと思う。
375デフォルトの名無しさん (ドコグロ MM33-VRky)
2019/10/19(土) 08:10:42.89ID:Mtyg747cM376デフォルトの名無しさん (アウアウウー Sa43-r0zP)
2019/10/19(土) 10:54:26.76ID:CSoOYtrTa VBAのいいところはほぼ会社のPCで普通にはいっているExcelでいろんなことができるようになることだろ
C#だなんだっていうやつは職場のPCにかってにVSとかいれていいとでも思ってるのかな
それをわかってないバカが多すぎ
C#だなんだっていうやつは職場のPCにかってにVSとかいれていいとでも思ってるのかな
それをわかってないバカが多すぎ
377デフォルトの名無しさん (スフッ Sd32-S3Tg)
2019/10/19(土) 11:14:07.78ID:Vb23X7hcd データの整理とか手作業でやらされてるのを、ちょっと自動化して楽したいだけなのに、なんでC#とか使わなあかんの
378デフォルトの名無しさん (ワッチョイ 1201-VRky)
2019/10/19(土) 11:32:54.08ID:a0xT/TLW0379デフォルトの名無しさん (アークセー Sx47-vS/Z)
2019/10/19(土) 11:43:29.38ID:ZEihazemx ちょっとした処理のためにCOMのOfficeのGUIを起動させ続けなきゃいけないってのがVBAの最大の難点でしよ
単なるデータ整理をする環境として見るとOfficeは高機能すぎるし効率が悪い
PowerShellなんてWindows標準でSDKとCUIがインストールされてるしマルチプロセスもOKだからな
単なるデータ整理をする環境として見るとOfficeは高機能すぎるし効率が悪い
PowerShellなんてWindows標準でSDKとCUIがインストールされてるしマルチプロセスもOKだからな
380デフォルトの名無しさん (ササクッテロル Sp47-5sgQ)
2019/10/19(土) 12:03:08.48ID:hNMTCzKgp Powershellは.NetFramework抜いたらただのshell
.NetFrameworkにへばりついてるただの寄生虫
.NetFrameworkにへばりついてるただの寄生虫
38249 (スップ Sd52-Nocg)
2019/10/19(土) 12:06:19.27ID:EjAyXMTtd■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 最新版Z級クソ映画ランキングが決定! [牛丼★]
- 「1800万円の売り上げゼロに…」中国インバウンドに特化の宿の今 ★2 [蚤の市★]
- 【食】「シャウエッセンは焼くべからず」暗黙のルールを破り売上高過去最高…日本ハム社員たちが「夜味」にかけた情熱 [ぐれ★]
- 公用車カーナビのNHK受信料「全額免除を」 千葉市議会、国に制度創設求める意見書可決 [少考さん★]
- 神田沙也加さん元恋人で元俳優の前山剛久 六本木のメンズラウンジ勤務を報告「真叶(まなと)です。よろしく」 [muffin★]
- 地震 [Hitzeschleier★]
- 変な人「俺は正しい!お前らは間違っている!」←大体こいつのほうが迷惑で間違ってる件について
- 理想「VTuberは声も良くて声優並みの演技ができる」→現実「一般人ババアのような声な上に演技も素人でした」
- ココアさん好き好き大好き
- 【朗報】南鳥島のレアアース、中国産の「20倍の純度」青山繁晴氏「日本は資源大国」日本復活のファンファーレが鳴り響く! [673057929]
- 「妨」という字が女へんという事実…
- (´・ω・`)おはよ
