hallo-2007 の回答履歴
- エクセル起動時にイベントが実行されないようにする。
エクセルVBEのThisWorkbook内に下記のようなイベントでコードを書いておき、 BOOKオープン時には実行されない単なるメモ的効果のものを書いておきたいと思います。 (これ以外にも複数のコードをたくさん記述しておきたい。) そして実際に使う時だけ有効に切り替えて使いたいと思っています。 コードは正しく書いておかないとオープン時にエラーメッセージがでてしまうので 「’」の記号を行頭につけてメモにしておくのはわかるのですが、行数が増えると全行頭に 記号を付けたり省いたりするのがかなり手間となります。 簡単に有効無効を切り替えて書いておく方法はありますか。 あるいは必要な部分だけ記号を全行頭に一気に付けたりとりはずしたりする方法はありますか。 Private Sub Workbook_Open() Sheets("販売").EnableSelection = xlUnlockedCells Sheets("顧客").EnableSelection = xlUnlockedCells Sheets("商品").EnableSelection = xlUnlockedCells End Sub
- ベストアンサー
- Visual Basic
- kafun-show
- 回答数4
- VBA 変数・定数名の付け方
いつもお世話になっております。 現在VBAを勉強中の初心者です。 変数や定数名について質問させていただきます。 自分でコードを作成した場合、変数名や定数名について、『何にしようか?』と結構な時間迷ってしまします。 決められたルールの中であれば、自由に命名して良いのでしょうが、参考書等を見ると同じような役割の変数・定数には似通った名前がつけられているように見受けられます(まあ当然かもしれませんが・・・) 私も今後の事を考えて、規則?に沿った名称を使って行きたいと考えています。 何か参考となるサイトなどはありますでしょうか? どうぞよろしくお願いいたします。
- ベストアンサー
- Excel(エクセル)
- genta1019boston
- 回答数3
- excel 2003 と 2007 の違い?
職場のPC ・windowsXP ・excel2003 自宅PC ・windows7 ・excel2007 職場には自分専用端末がないので、自宅でコードを書いてUSBメモリにコピーし、 職場でペーストするという環境で起きた問題です。 やりたいことは、顧客から送られてくるデータを sheet1 に保存し、 sheet2 に置いてあるマスターデータを参照して不必要な行を削除するマクロです。 以下、コード _______________________ Sub 別シート参照デリート() Dim st1, st2 As Worksheet Set st1 = ThisWorkbook.Sheets("sheet1") '作業用シート Set st2 = ThisWorkbook.Sheets("sheet2") 'マスターシート Dim st1Row, st2Row As Integer st1Row = st1.Cells(Rows.Count, 1).End(xlUp).Row st2Row = st2.Cells(Rows.Count, 1).End(xlUp).Row Dim st1value, st2value As String Dim i, j As Integer 'マスターシートを参照して必要ないものは削除する For i = st1Row To 1 Step -1 st1value = st1.Cells(i, 3).Value For j = st2Row To 1 Step -1 st2value = st2.Cells(j, 1).Value If st1value = st2value Then Exit For '該当するなら必要行なので次へ ElseIf j = 1 Then st1.Cells(i, 3).EntireRow.Delete 'st2の先頭行は"品番"なので不必要=削除 End If Next j Next i End Sub _______________________ 自宅環境では問題なく動作するのですが、職場のPCだと ”オブフェクトが必要です” のエラーが返ってきます。 かといって、どの構文でエラーが出ているのか教えてくれない(反転しない)んです。 どこにエラーがあるのでしょうか? よろしくお願いします。
- ベストアンサー
- Visual Basic
- classical
- 回答数2
- エクセル関数について教えてください
sheet1は以下のようなデータが入力さて言います。 担当者名 商品名 仕入日 金額 在庫状況 1 山本 ペン 3/15 100 在庫 2 植田 ピン 3/1 80 売却済 3 中川 消しゴム 2/20 120 在庫 100 山下 クリップ 3/8 150 売却済 sheet2には仕入日順に在庫だけを表示したいです。 担当者名 商品名 仕入日 金額 在庫状況 1 中川 消しゴム 2/20 120 在庫 2 山本 ペン 3/15 100 在庫 3 100
- ベストアンサー
- Excel(エクセル)
- ka23kmar
- 回答数6
- 変数をうまく使えずに悪戦苦闘しています。
多分、まったく内容がなっていないというお叱りを受けそうですが、 今私が考えられるところはここまでです。 何が原因で動かないのか、分かりません。 よろしくお願いします。 確認用シートにデータがあります。データは個人カウントと月ごとの集計で成り立っています。 そのデータの個人名と月で検索した回答を集計用シートに表示させたいと考えています。 それで次のようなコードを書いてみましたが、思い通りの結果を出すことができませんでした。 式は直接式を入力すると正しい答えが出るのですが、コードを実行させた場合は#NAME?に なってしまいます。こういう場合は変数は使えないのでしょうか? また、集計で得た結果を結果シートに値のみ貼り付けてエビデンスを残したいのですが、 これもうまくいきません。 貼り付けた後順位の項目でソートさせたいのですが、これもうまくいきませんでした。 また、ピボットテーブルに毎月のデータを入力させて、ピボットグラフを作るように テーブルとグラフをあらかじめ作成し、前月のデータを集計させたかったのですが、 これも見事に失敗しました。 ところで、もし当月が1月の場合は12月を見るようにさせたいのですが、IF文がうまく できません。IF文を認識してくれていないので、END IFにするとIFがありませんとエラーが 返ってきます。 まったくお手上げです。 よろしくお願いします。 Sub カウント() '式の割当 Dim a As Long, b As Long, d As String, e As String Dim getRange As String, getpreRange As String a = Sheets("集計用").Range("B87").Value b = a - 1 d = "_" & a & "月" e = "_" & b & "月" If a = 1 Then b = 12 getRange = "=INDEX(確認用データ,H89,d)" getpreRange = "=INDEX(確認用データ,H89,e)" Sheets("集計用").Range("C89").Formula = getRange Sheets("集計用").Range("D89").Formula = getpreRange Sheets("集計用").Range("C89:D89").Copy Sheets("集計用").Range("C90:C128") '結果シートに値のみ貼り付け, 順位で並べ替え Sheets("集計用").Range("B87:E128").Select Selection.Copy Sheets("結果").Range("A1").End(xlRight).Offset(0, 2).Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Application.CutCopyMode = False Selection.Sort Key1:=Range("順位"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _ :=xlPinYin, DataOption1:=xlSortNormal '前月のデータからピボットテーブルを作成する Dim r As String r = a & "月" ActiveSheet.PivotTables("ピボットテーブル2").AddDataField ActiveSheet.PivotTables( _ "ピボットテーブル2").PivotFields(r), "合計 / r", xlSum End Sub
- ベストアンサー
- Visual Basic
- intyiyasaka
- 回答数1
- エクセルのセル内数字の分割転記
またしてもド素人の質問で恐縮ですが、 ある列に桁数の異なる数値が縦に並んで記載されているとき、 セルと同一列の別のセルに、数値を一文字ずつ分割して、下記の様に表示させたいのです。 (G列の数字はすべて右揃えのつもりです) A B C D E F G 1 5 4 3 2 1 54321 2 1 2 3 123 3 2 2 22 4 6 5 2 652 5 9 9 そこで、A1には、=LEFT(RIGHT($G1,5))、B1には=LEFT(RIGHT($G1,4))、というように、関数を入れておき、1列目はA1からE1まで無事表示できました。 しかし、2列目以降にA1からE1の各セルの式を転記しますと、 1 5 4 3 2 1 54321 2 1 1 1 2 3 123 3 2 2 2 2 2 22 4 6 6 6 5 2 652 5 9 9 9 9 9 9 と、なってしまいました。空白にしたいところに指定セルのトップの数字が入ってしまうんです。指定したセルの数字の桁数よりも大きな部分は空白にしたいのですが、 「もしも何かの条件に合わねば空欄に」というようなことができれば幸いなんですが、どのようにすればいいのかをお教えください。
- ベストアンサー
- Excel(エクセル)
- mgrA3
- 回答数6
- 出世の基準
「え~!こんなバカでも出世するのか?!」ってこと、よくありますよね。 NHKの現会長なんか、立場上、言っていいこと悪いことの区別がつかない・言動に品が無い・・・ という社会人として最低限のマナーをクリアしていないのに「なんで、あそこまで??」と思いました。身近でも、市民会議に出たりすると、現役時代の地位を自慢する・ひとの話を聞かない・批判ばかりする・説得力がない・・・けっこう多いです。 小説では、運とか、実力ではなく派閥を泳ぎきる能力とか、ヨイショ力とか書かれていますが、ほんとはどうなんでしょう? もちろん実力も人格も優れている方もいらっしゃるとは思いますが、社会人の皆様の周りではいかがですか?
- 締切済み
- その他(社会問題・時事)
- ekopon
- 回答数9
- 出世の基準
「え~!こんなバカでも出世するのか?!」ってこと、よくありますよね。 NHKの現会長なんか、立場上、言っていいこと悪いことの区別がつかない・言動に品が無い・・・ という社会人として最低限のマナーをクリアしていないのに「なんで、あそこまで??」と思いました。身近でも、市民会議に出たりすると、現役時代の地位を自慢する・ひとの話を聞かない・批判ばかりする・説得力がない・・・けっこう多いです。 小説では、運とか、実力ではなく派閥を泳ぎきる能力とか、ヨイショ力とか書かれていますが、ほんとはどうなんでしょう? もちろん実力も人格も優れている方もいらっしゃるとは思いますが、社会人の皆様の周りではいかがですか?
- 締切済み
- その他(社会問題・時事)
- ekopon
- 回答数9
- フォルダー内の支店ごとのブックを集計するマクロを
エクセル2010で、1つのフォルダ内にある複数のエクセルファイル(約100支店分)から、日次売上等の集計マクロを作成したいのですが方法がわかりません。 上司からの依頼を受け、ひとり悩んでましたが・・・で皆さんに相談です。ご協力お願いします ■基本条件 ・毎日、支店がフォルダ内の売上情報を入力(更新)し保存する。 ・全店とも中身は同書式同形式ファイル 例)実績報告A店.XLS、実績報告B店.XLS・・・ ■マクロ(集計.XLS)でやりたいこと ・各支店ブックの実績シートから、支店名(A5)・売上A(B5)・売上B(C5)を転記し明細表の作成 ・集計表の作成 マクロど素人の私に、どなたか教えていただけますでしょうか? よろしくお願いします。
- ベストアンサー
- Visual Basic
- kazuhiro6731
- 回答数2
- VBAセミナ 業界は狭い?
VBAを1,2年ですがそれなりに勉強して来て、思うところがあります。 大阪で1日講習に参加したら講師は「便利に切り貼りして終わりにする奴は、金返すから帰れと言いたい!!こっちの商売あがったりだ!」と吐き捨てるように怒鳴ってました。ちなみに受講者は二人。手上げて帰ろうかと一瞬思いました。 最初はナニ言ってんだと思いましたが、後日知ったのが、とあるHPで色々なプロシージャを部品集として紹介してました。これの事を言ってたのかな?と。たまたま自宅の近所だったので、私の住所見て思うところがあったのか? 他にもあります。 数か月通った学校では自動マクロ使用を推奨してました。コマンドを調べられるからです。私も同意見です。ところが、とあるHPでは講師が自動マクロ使用を固く禁じてます。 曜日の取得について、関数weekdayとformatどちらを使うか、これも両極端です。 主義主張の違いと言うと聞こえはいいですが、うがった見方をすると足の引っ張り合いしてませんか?他社動向を把握し、独自性を保ってるとも言えますが。 どう思いますか?同様に感じた方はおられますか?この業界、実は狭いのかと思いました。
- ベストアンサー
- Excel(エクセル)
- over_the_galaxy
- 回答数3
- 別の名簿の情報を埋め込む
今回もお世話になります。 名簿A、B,Cの3つがあったとします。ここには氏名、電話番号、住所が載っています。 名簿Dを作りました。ここにはまだ氏名しか載っていません。 これからDに、該当する電話番号と住所をABCから見つけて追記しなければいけないのですが、量が膨大で手動でやりたくないです。 同一人物をABCから検索し、書き込むという作業を関数か何かで自動化できたりしないでしょうか。 よろしくお願いいたします。
- ベストアンサー
- Excel(エクセル)
- taomon
- 回答数2
- PC教室か、依頼するか、どちら?
あまりにも素人な質問でお恥ずかしいのですが。この春から会社の入力ソフトがパッケージソフト(販売大臣?)に変わることになりました。 今までアクセスを利用してエクセルに落としたデータを、予め用意したデザインページに貼り付けて、仮納品書を印刷していました。 今回のソフトでも、金額の入っていない仮納品書はだせ無いとの事で、各自でエクセルに落としたデータを細工してくれと言われました。 そうした事の明るい人間がいない会社です。今現在の処理は5年程前に退職した人が、必要に迫られて作った物です。その使い方だけ習って使用しています。 新しいソフトになって使えなくなると困りますが、会社でそれを使うのは、ほぼ私だけであり周りは深刻にとらえていません。100~500行(時には1000行)の商品明細を枠に手打ちすればいい位に考えています。 パソコン教室で教えてもらえる様な事なのでしょうか?思い切って何処かに依頼すべきでしょうか?業務の事なので会社が考えれば良い事なのに、誰も機械のわかる人間がいないので(考える事が嫌なだけかも。お金がかかることは社長が嫌がるから。)悩んでいます。どうしたら良いのでしょうか?アドバイスお願いします。
- 締切済み
- Excel(エクセル)
- ho-chanmama
- 回答数3
- 【VBA】特定シート 名前編集・削除を禁止したい
いつも大変お世話になっております。 Excel2003を使用しております。 今回VBAでやりたいことは、 特定シートの名前編集・削除を禁止したいのです。 シート名 「データ」 シート名 「一覧」 この二つを名前編集・削除禁止にしたいと思っております。 保護する方法も考えたのですが、 現在様々なプログラムでシートを利用しており、 保護をかけると色んなフォーム上で保護解除をしないといけません。 データの参照・編集が出来ないと困るのです。 保護をかける 以外で何か、方法はありますでしょうか? 以上、 回答よろしくお願い致します。
- ベストアンサー
- Excel(エクセル)
- satoron666
- 回答数5
- エクセルで文書作成する時の余白について
XPのサポート終了にともない、ウイン7 を購入しました。XPでエクセルを使って、文書を作成していた時は、ページ設定から「余白」をクリックすると、作成した文書が画面に表示され、カーソルで 枠の線を動かすことにより、上下左右の余白を調整することが出来ました。しかし、この2010エクセルでは、このような線を動かして調整する画面は見当たりません。(「余白」に小さなエクセルのセル の絵が載っていますが、線をクリックしても、変化しません。)ユーザー設定で、数字を入れて、余白 を調整する方法しかないのでしょうか。ご教授くださるようお願いいたします。
- ベストアンサー
- Excel(エクセル)
- 2005sakamasa
- 回答数2
- エクセル関数・出発時間に伴う起床時間を自動で
エクセルの関数もしくは自動書式についておしえてください。 出発時間が9:00~12:00の間なら、 起床時間は7:00。 持ち物は、タオル。 出発時間が13:00~19:00の間なら、 起床時間は11:00。 持ち物は、カメラ。 というのを出発時間をあるセルに入力すると、起床時間と持ち物が自動で入力される ようにしたいです。 よろしくお願いします。
- ベストアンサー
- Excel(エクセル)
- yamatonohi
- 回答数5
- 【Excel】日時で合計額を出したい
お世話になりおります。 調べてもわからず、ここでお力をお借りしたく、質問をさせていただきます。 日にちと時間ごとに合計金額を抽出したいと考えています。 画像はあくまで例ですが、 A・B列が元データで、E列の黄色い部分のように 元データの日にちと時間で数字を表示させたいです。 データは1ヶ月分あるので、数が多く困り果ててます・・・ E列、G列にはどのような関数をいれればいいでしょうか。 ご教授をお願いいたします。
- 締切済み
- Excel(エクセル)
- tomomono2001
- 回答数3
- VBA 講師は何見て学ぶ?
セミナの講師や、ネットのHP(Office TANAKA, mouge etc)、参考書、調べたい時に資料は山ほどあります。しかし、これらを書く人は何を見て書いてるのでしょうか?VBAのヘルプでしょうか?それにしては詳しいですね。どうやって調べてるのでしょうか?
- ベストアンサー
- Excel(エクセル)
- over_the_galaxy
- 回答数4
- 【VBA】特定シート 名前編集・削除を禁止したい
いつも大変お世話になっております。 Excel2003を使用しております。 今回VBAでやりたいことは、 特定シートの名前編集・削除を禁止したいのです。 シート名 「データ」 シート名 「一覧」 この二つを名前編集・削除禁止にしたいと思っております。 保護する方法も考えたのですが、 現在様々なプログラムでシートを利用しており、 保護をかけると色んなフォーム上で保護解除をしないといけません。 データの参照・編集が出来ないと困るのです。 保護をかける 以外で何か、方法はありますでしょうか? 以上、 回答よろしくお願い致します。
- ベストアンサー
- Excel(エクセル)
- satoron666
- 回答数5
- ソニーって会社どうなるの?
ソニーがパソコン事業を見直し、VAIOの事実上の売却を表明しました。 ウォークマンはもはや過去のもの、PSPもスマホを中心とした ソーシャルゲームに押されてお先真っ暗、もはやハードゲーム機自体も尻すぼみ状態。 一体この会社は将来どうなっていくのでしょうか? スマホのエクスペリアが健在とは言え、そのスマホ業界もあらゆる事やり切った感があって、 これ以上将来性があるとは思えません・・・。 もしかして株式業界でソニーショックみたいなのが起こる可能性あるのでしょうか?
- 他ブックからのデータ検索・コピー(VBA)
【Book2】(Sheet2)L1に「12-1」を入力 ↓ 【Book1】(Sheet1)で「12-1」をM列、T列、AA列から検索→M4に「12-1」があった ↓ 【Book1】(Sheet1)N4:S4のデータを【Book2】(Sheet2)M1:R1にコピー 各ブックは同一ファイルに保存 検索する文字列の重複はなし 現在は関数≪VLOOKUP≫を使い上記を行っています。 マクロを使った方がスムーズに処理できるのでしょうか。 マクロを使う場合はどのような方法が良いのでしょうか。 データ数は1000行程度、各行の25個のセルに≪VLOOKUP≫関数が入っています。
- ベストアンサー
- Visual Basic
- koge_tsu
- 回答数2