Yahoo!知恵袋のBA回答への補足等

知恵袋は解決済みになると修正や補足ができないので、ここで失礼します。

Office系(Word、Exc

[ リスト | 詳細 ]

記事検索
検索

全3ページ

[1] [2] [3]

[ 次のページ ]

トップ > インターネット、PCと家電 > ソフトウェア > Office系(Word、Excel)
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1225415987
>エクセルのマクロって何?

に対する回答です。
--------------------------------------------------------------------------------

>エクセルのマクロって何?

既に回答が出ているのですが、自分の後学のため敢えて回答いたします。
ここでは本家(マイクロソフト)のサイトを引用しながら説明いたします。

マクロの基本 - トレーニング - Microsoft Office Online
http://office.microsoft.com/training/Training.aspx?AssetID=RP011506...
--------------------------------------------------
Excel のマクロとは、ブックに格納されるコードのことで、特定の反復作業を自動化し、データをすばやく整理するのに役立ちます。マクロを使うと、さまざまな作業が楽になります。
--------------------------------------------------

IT業界では「特定の操作手順をプログラムとして記述して自動化する機能。」をマクロと称しています。

マクロとは 【macro】 - 意味・解説 : IT用語辞典
http://e-words.jp/w/E3839EE382AFE383AD.html

用語の説明 - トレーニング - Microsoft Office Online
http://office.microsoft.com/training/Training.aspx?AssetID=RP011506...
--------------------------------------------------
マクロ: 特定の結果を出すコードで、独自の名前を持ちます。 
VBA: Visual Basic for Applications の略で、マクロのコード言語です。 
モジュール: マクロを格納するためのコンテナで、ブックに添付されます。
--------------------------------------------------

実はExcelが出た当初は、マクロ機能はマクロシートという特別なシートに記述していました。(現在のAccessマクロに似ている)
それからVBAが開発されて、後にマクロシートは廃止になりました。
なので現在Excelでは、「マクロ機能の実現」=「VBA言語でのコーディング」となっています。(Accessは現在も、マクロとモジュール(VBA)は別ものです)

ここまでがExcelのマクロの説明ですが、上記サイトに簡単なサンプルが載っていますのでぜひ試してみてください。

ここから補足になりますが、マクロは自分で1からコーディングすることもできますし、Excelから「自動生成」することもできます。
「ツール」→「マクロ」→「新しいマクロの記録」

いずれも同じVBAで作成しますので、自動生成後の手動修正なども可能です。(つまりVBAのコーディングが多少わからなくても、自動生成後のソースを見れば見当がつきます。)

また自分で1からコーディングする際には、引数(機能呼び出し時に初期値を与えること)のある機能や、戻り値(機能呼び出し時に結果を返すこと)のある機能(これはfunctionプロシージャと呼びます)を作成することも可能です。

さらに「functionプロシージャ」は、Excel上のシート関数(ユーザ定義関数)として呼び出すことも可能です。

Excelを利用しているのであれば、ぜひチャレンジしていただきたい機能です。
--------------------------------------------------------------------------------

トップ > インターネット、PCと家電 > ソフトウェア > グラフィック、音楽
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1125336556
>幼稚園のクラス(30名)の親子写真一覧を作りたいのです。良い方法はないでしょう...

に対する回答です。
--------------------------------------------------------------------------------
>幼稚園のクラス(30名)の親子写真一覧を作りたいのです。良い方法はないでしょうか。出来るだけ出費のない、フリーソフトやエクセルやワードなどを使って、且つかわいいものが希望です。 

>A4一枚のシートに、先生方(8名)と親子ツーショット、そしてそれぞれに名前が入る感じで作成したいと思います。
>こちらのスキルは、ごく普通、事務系会社員程度(?)です。PC操作が苦手と云うわけではありませんが、3クラス分あるので極力楽な方法が助かります。

やっぱりWordがよいと思います。Excelだと画像を多く扱う場合は大変でしょう。
ただ、(30名+8名)x3組の120枚弱の画像を貼り付けるのは、それだけでも大変ですね。

おいらのお勧めは、htmlで型を作ってからWordで編集のパターンです。

(1)まず画像の入ったフォルダに以下のようなhtmlファイルを(メモ帳にて)作成します。
↓に雛型作ってみたので、そのままダウンロードして試してみてください。表示してソース表示した後フォルダに保存でOKです。
(これは適当なファイル名と名前なので、5分もかからず作れてます。)

http://yokohamaloving.web.fc2.com/sample_image/dog2.html

そのソースのimgタグの「dog2.gif」の部分を画像ファイル名に、imgタグの外の「dog2」を名前に、それぞれ変更すればOKです。できたソース(html)をブラウザで確認したら、

(2)Wordでそのソース(html)を読み込んで、すかさずdoc形式で「名前を付けて保存」します。
あとはWordの世界ですので、好きなように編集できます。

「かわいいもの」ができるかどうかは、あなたのセンス次第です!(でも、あんまり遊びのスペースがないようですね。)

http://yokohamaloving.web.fc2.com/sample_image/dog2.doc
--------------------------------------------------------------------------------

イメージ 1

イメージ 2

イメージ 3

イメージ 4

イメージ 5

トップ > インターネット、PCと家電 > ソフトウェア > Office系(Word、Excel)
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1124596456
>エクセルでこんなことできますか?マクロ?関数?マクロ・関数の合せ技?自分で...

に対する回答案です。ぼさっとしている内に締め切られていました。
--------------------------------------------------------------------------------
>エクセルでこんなことできますか?
>マクロ?関数?マクロ・関数の合せ技?
>自分では解決できないので知ってらっしゃる方いましたら教えてください。 
>詳しくは下図参照なんですが、
>データベースのセルに任意の数字・名前を打込むと各々のシートのセルに上から順番に埋められていくようなことってどうしたらできるのでしょうか?

関数だけでできないこともないでしょう。ただ柔軟性と言う意味で実用性は疑問ですけど。

マクロ(VBA)だけで実現するのも、ロジック的には大変ですね。

本来Excelの抽出はフィルタ機能くらいまでで、それ以上の機能をもたせるのは難があります。

一応サンプルを組みましたので、

(1)シート関数のみバージョン
B列にワークエリアを設定しています。

(2)シート関数+マクロ(VBA)バージョン
(1)同様にB列にワークエリアを設定しています。
この列がないと、ロジックだけで組むのは骨が折れます。

(3)PIVOTバージョン
H,I列は関係ないです。

参考まで。

http://yokohamaloving.web.fc2.com/sample-select.xls
--------------------------------------------------------------------------------

画像は、
(1)でエラー回避前の状態。
https://blogs.yahoo.co.jp/IMG/ybi/1/86/39/higashikanagawa_bad/folder/703393/img_703393_13628450_0
(1)でエラー関数の状態確認。
https://blogs.yahoo.co.jp/IMG/ybi/1/86/39/higashikanagawa_bad/folder/703393/img_703393_13628450_1
(1)でエラー関数を利用してエラー回避した後の状態。
https://blogs.yahoo.co.jp/IMG/ybi/1/86/39/higashikanagawa_bad/folder/703393/img_703393_13628450_2
(2)で実行後の状態。ソースは以下。(注:全然ソースの整理はしていません。)
https://blogs.yahoo.co.jp/IMG/ybi/1/86/39/higashikanagawa_bad/folder/703393/img_703393_13628450_3
(3)で実行後の状態。
https://blogs.yahoo.co.jp/IMG/ybi/1/86/39/higashikanagawa_bad/folder/703393/img_703393_13628450_4
となっています。

以下、(2)のソース。
Dim iRow

For i = 1 To 3
    'clear
    iRow = 4 + 10 * (i - 1)
    j = 1
    For iRowWork = iRow To iRow + 10
        Cells(iRowWork, "J") = ""
    Next
    'hitset
    Do While j <= 10
        hitVal = ""
        For jRow = 3 To 13
            If Cells(jRow, "B") = Trim(Str(i & j)) Then
                hitVal = Cells(jRow, "C")
                Exit For
            End If
        Next jRow
        If hitVal = "" Then Exit Do
        Cells(iRow, "J") = hitVal
        iRow = iRow + 1
        j = j + 1
    Loop

Next

End Sub

トップ > インターネット、PCと家電 > ソフトウェア > Office系(Word、Excel)
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1023242050
>仕事でシフト作成と給料計算をしています。できればシフト(エクセルで作成)を作成...

に対する回答です。これはBAに選ばれていませんが、ここを読んだ皆さんはどれを選択しますか?
--------------------------------------------------------------------------------
>仕事でシフト作成と給料計算をしています。できればシフト(エクセルで作成)を作成した時点でおおまかな金額を知りたいと思い、いろいろ試しているのですがうまくいきません。

以前似たような質問に回答していますので、その手法でよろしければ。

エクセルでのコンビニの勤務時間管理について
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1422282429

A1からA6までをワークエリアとします。
A7からA10に割り振りした時間を算出します。
A11は、式で必要なダミーです。

B3
=IF(B$2-$A3>0,(B$2-$A3),0)-IF(B$1-$A3>0,(B$1-$A3),0)

B7
=B3-SUM(B8:B$11)

を、それぞれ下へコピー、右へコピーです。

一応深夜を22時から翌5時としており、ほぼ二日間(0時から翌22時)の勤務時間まで対応しています。
ただし、24時間を越えた場合は、時刻に+24して入力してください。(19時->翌6時は、19->30)

↓サンプルブックです。
http://yokohamaloving.web.fc2.com/sample2.xls
--------------------------------------------------------------------------------
ちなみにBAに選ばれた方法は、全てを式で埋める方式です。
回答では、9通りのパターンに分けて、それぞれを式化し「9つの式」を埋め込むことによって解決しています。

おいらの回答はワークエリアを利用してパターンを振分けることによって、「2つの式」で解決しています。

勿論回答が得られる前提であれば、どちらも正解です。

ただし情報処理の世界では、異なります。なぜなら「バグ」を最も嫌うからです。
「バグ」は通常コーディング量に比例して増えていきます。それも正比例というよりは、増えれば増えるほど、比率が大きくなるものなのです。

それを勘案すると、コーディング量でみておいらの回答の方があきらかに少ないのがわかると思います。
式の数そのものもそうですが、式の構成そのものがシンプルになっているのが確認できると思います。

まあおいらは一応SEなんで「正解だせずにどうする?」という立場なので、当たり前といえば当たり前なんですが、プログラマーの中にも結構こういう考え方ができない人もいて、ちょっと残念に思うこともあります。いくら技術的に可能であっても「シンプルでなきゃ、だめじゃん?」が、おいらの信念でもあります。

たぶん仕事で複雑な式だらけのシートを見つけたら、おいらなら即「没」とするでしょうね。

勝手にTAG【Excel】

トップ > インターネット、PCと家電 > ソフトウェア > Office系(Word、Excel)
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1223297277
>エクセルで住所録を作りました(約50名分)。その情報を他のエクセルシートで作っ...

に対する回答です。

--------------------------------------------------------------------------------
>エクセルで住所録を作りました(約50名分)。その情報を他のエクセルシートで作った案内状に自動で飛ばして、50名分の
案内状を作るということは可能でしょうか?

通常それはWordの差し込み印刷で行う処理です。
Excelには差し込み印刷はありません。

一行ずつ選択するのであれば、関数のみで可能です。

連続して行う場合は、マクロ(VBA)が必要です。

↓に詳しいので、ご覧ください。

excelからexcelへの差し込み印刷 - 教えて!goo
http://oshiete1.goo.ne.jp/qa3597313.html
--------------------------------------------------------------------------------

以前ここでも補足しましたが、問題解決の手段は常に複数あると思います。
その中で自分(の環境)にあった最適な回答を導くことが必要です。

「知恵袋」では質問者のスキルが見えない質問が多いです。
勿論具体的な例示されたものであれば、推測できますけどね。

色々閲覧していると、漠然とした質問に対して、或いは質問者のスキルが推し量れる質問に対して、「そりゃ無謀だろ?」と思わざるを得ないマニアックな回答も良く見ます。まあ回答するほうも別に義務があってやっているわけではないので、それはそれで自由なんですけれども。

でもそれでもBAになっていたら、「それ絶対にわかってないでしょ?」と、突っ込みたくなる今日この頃。

全3ページ

[1] [2] [3]

[ 次のページ ]


.
hig*shi*an*ga*a_b*d
hig*shi*an*ga*a_b*d
男性 / 非公開
人気度
Yahoo!ブログヘルプ - ブログ人気度について
検索 検索
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

過去の記事一覧

スマートフォンで見る

モバイル版Yahoo!ブログにアクセス!

スマートフォン版Yahoo!ブログにアクセス!

よしもとブログランキング

もっと見る

[PR]お得情報

いまならもらえる!ウィスパーWガード
薄いしモレを防ぐパンティライナー
話題の新製品を10,000名様にプレゼント
いまならもらえる!ウィスパーうすさら
薄いしモレを防ぐ尿ケアパッド
話題の新製品を10,000名様にプレゼント
ふるさと納税サイト『さとふる』
11/30まで5周年記念キャンペーン中!
Amazonギフト券1000円分当たる!

その他のキャンペーン


プライバシー -  利用規約 -  メディアステートメント -  ガイドライン -  順守事項 -  ご意見・ご要望 -  ヘルプ・お問い合わせ

Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.

みんなの更新記事