エクセルマクロオンライン講座 質問と回答

無料・有料のオンライン講座で 寄せられたメッセージの一部を紹介致します。

123>

[8035]データ転記先のシートすべてに対し、罫線を引く等の後処理をする

2017-04-21 11:14:39 松隈 利幸さんからの投稿です。

小川 様

お世話になります。
何度も復習しながら覚えていっています。
伝票マクロを何とか会社用に代えてみたのですが、
一部でどうしても引っかかるところがあります。
Private Sub ExeCreateDenpyo()
DeleteSheets
Dim lnFm As Long
Dim lnFmMx As Long
Dim st As String
Dim shFm As Worksheet
Dim shTo As Worksheet
Dim dt As Date
Set shFm = Worksheets("main")
lnFmMx = shFm.Range("E1048576").End(xlUp).Row
Dim lnTo As Long
For lnFm = 3 To lnFmMx
If st <> shFm.Range("E" & lnFm).Value Then
If lnFm > 3 Then
Keisen
End If
st = shFm.Range("E" & lnFm).Value
Sheets("main1").Copy After:=Sheets(2)
Set shTo = ActiveSheet
> shTo.Name = st
lnTo = 16
End If
shTo.Range("A" & lnTo).Value = shFm.Range("B" & lnFm).Value
shTo.Range("B" & lnTo).Value = shFm.Range("C" & lnFm).Value
shTo.Range("C" & lnTo).Value = shFm.Range("D" & lnFm).Value
shTo.Range("D" & lnTo).Value = shFm.Range("E" & lnFm).Value
shTo.Range("E" & lnTo).Value = shFm.Range("F" & lnFm).Value
shTo.Range("F" & lnTo).Value = shFm.Range("G" & lnFm).Value
shTo.Range("G" & lnTo).Value = shFm.Range("H" & lnFm).Value
lnTo = lnTo + 1
Next
goukei
Keisen
shFm.Activate
End Sub

> shTo.Name = st

のところでデバッグしてしまうのです。

この名前は既に使われています。別の名前を入力してください。
というメッセージがあります。
最初はうまくいっていたのですが、最近でるようになりました。
どこが悪いのでしょうか。
お教えください。
Excel2016を使用しています。

最後の動画配信後ずいぶん時間が経っている 松隈

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[7754]すべてのシートを順に処理する

2017-02-27 17:35:51 受講生さんからの投稿です。

【ご質問】
カレンダーの動画は一通り見ましたが、こちらの小川先生のコードサンプルはどちらからダウンロードすればよろしいでしょうか?

教材ダウンロードをしても、伝票のものしかダウンロードできない状態です。
ご確認のほど何卒よろしくお願いいたします。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[7471]1枚のシート内で12ヶ月を横に並べたカレンダーを作成する

2017-01-04 07:23:26 平吹 敦史さんからの投稿です。

小川先生

お世話になっております。
素朴な疑問ですが、月ごとにsheet分けしたカレンダーを作成したのであれば、それをコピーして、
同一シート内に張り付けるマクロをつくれば、もっと簡単に横に並べるカレンダーが作れるのでは?

と、思ってつくりました。

その後、先生の解説動画を見たら、最初から、横に並べるカレンダーを作り始めたので、
どっちかを最初につくれば、どっちかはコピーでいけるのかな?とも思いました。
(どっちかとは、月別sheetが先か横並びが先かという意味です。)

ただ、DPRの考え方でいくと、Dはあくまで最初につくった縦に長い年間カレンダーであり、
月別のsheetにしたのは、Rなので、そこからRをつくるのは良くない、という考え方になる、
ということでいいのでしょうか?
                                        平吹敦史

[ 続きを読む ]  返信件数:3件  [ 動画を見る] 

[7470]1枚のシート内で12ヶ月を横に並べたカレンダーを作成する

2017-01-04 07:04:36 平吹 敦史さんからの投稿です。

お世話になっております。
動画の最後で、カレンダーマクロのfileをお渡しする、とあったのですが、そのfileはどこから、
入手すればいいのでしょうか?
発展編1の既入手済みのfileも調べましたが、それらしきfileはありませんでした。
すみませんが、教えていただければと思います。
                                        平吹 敦史

[ 続きを読む ]  返信件数:3件  [ 動画を見る] 

[7149]複数シートを作成し、取引先名リストにあるのと同じ名前を順に割り当てる

2016-10-01 07:40:23 田中 宏明さんからの投稿です。

この動画を見ての感想です。
初心者のころに自分が書いた「シート間でデータをコピーするマクロ」を見直してみると、当時、とにかく動けばいいやといった感じで後からのメンテナンスを気にせずマクロを書いていたことに気がつきますね。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[6043]データ転記先のシートすべてに対し、罫線を引く等の後処理をする

2016-03-22 19:01:49 平澤 延弘さんからの投稿です。

小川先生
 こんにちは。
 初めてホームページで伝票作成マクロの動画を見た後、
長い間自分でこんなプログラムを作成してみたいと思ってきましたが、
四苦八苦しながらもなんとかここまで来ることができました。

 私は伝票作成業務そのものは担当しておりませんが、
このマクロを学ぶ過程で得たデータの転記やシート作成の知識は、
十分私の業務に活かせるものでした。
まだ仕事ではここまで生産性の高いマクロは作成できていませんが、
「3日分の仕事を3分で」というレベルまでは大分近づいてきたように思います。

 この後は他の講座を受講してさらに知識を深めたいと思いますので、
これからもよろしくお願いいたします。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[5905]1枚のシート内で12ヶ月を横に並べたカレンダーを作成する

2016-03-07 13:54:28 tomoki1105さんからの投稿です。

小川先生

いつもお世話になっております。

5:35でおっしゃっていた、Offsetの変数値設定の裏技ですが、もし良ければ教えて頂けますか??

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[5804]所定の条件に一致しないシートすべてを削除する

2016-02-21 01:54:27 受講生さんからの投稿です。

今作成しているマクロがまさにこれ・・伝票ではないですが品名ごとにシート作成・集計・転記・削除の繰り返しを日々の仕事としてます。
シート作成・削除がこれでできました。ワクワクしてきました。今月完成できるかも・\^:^/・・(集計に悪戦苦闘ですが^:^;)

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[4992]所定のシート以外すべてを削除する

2015-09-02 10:42:47 受講生さんからの投稿です。

小川先生
消すワークシートのオブジェクト変数のネーミング、こういった積み重ねですね。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[4372]データ転記先のシートすべてに対し、罫線を引く等の後処理をする

2015-05-23 06:20:21 山田 将之さんからの投稿です。

ありがとうございました。

[ 続きを読む ]  返信件数:0件  [ 動画を見る] 

[4371]取引先ごとに作成したシートにデータ転記を行う2

2015-05-23 06:03:49 山田 将之さんからの投稿です。

すごいですね。感動しました。

[ 続きを読む ]  返信件数:0件  [ 動画を見る] 

[4369]取引先ごとに作成したシートにデータ転記を行う

2015-05-23 05:50:17 山田 将之さんからの投稿です。

シート間のやりとりでひっかかります。復習が必要のようです。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[4348]取引記録に登場するすべての取引先名のシートを作成する

2015-05-22 07:43:37 山田 将之さんからの投稿です。

いよいよクライマックスですね。

[ 続きを読む ]  返信件数:0件  [ 動画を見る] 

[4347]重複しないリストを作成する(並べ替えを行い、最後に元に戻す)

2015-05-22 06:24:29 山田 将之さんからの投稿です。

理解しました。

[ 続きを読む ]  返信件数:0件  [ 動画を見る] 

[4346]重複しないリストを作成する(並べ替えから行う)

2015-05-22 06:14:00 山田 将之さんからの投稿です。

並べ替えを自動記録した後、どれを残してどこを消すかがよくわかりません。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[4345]重複しないリストを作成し、新規シート作成時にリストからシート名を生成する

2015-05-22 06:08:20 山田 将之さんからの投稿です。

理解できました。ありがとうございます。

[ 続きを読む ]  返信件数:0件  [ 動画を見る] 

[4344]あらかじめ並べ替えられているリストから重複しないリストを作成する

2015-05-22 06:01:05 山田 将之さんからの投稿です。

ここは大丈夫です

[ 続きを読む ]  返信件数:0件  [ 動画を見る] 

[4343]テンプレートシートを複数コピーし、取引先名リストにあるのと同じ名前を順に割り当てる

2015-05-22 05:56:25 山田 将之さんからの投稿です。

難しいですね。

[ 続きを読む ]  返信件数:0件  [ 動画を見る] 

[4341]複数シートを作成し、取引先名リストにあるのと同じ名前を順に割り当てる

2015-05-21 21:55:57 山田 将之さんからの投稿です。

疲れました。

[ 続きを読む ]  返信件数:0件  [ 動画を見る] 

[4340]所定のシート以外すべてを削除する

2015-05-21 21:36:11 山田 将之さんからの投稿です。

いよいよ本題ですね。

[ 続きを読む ]  返信件数:0件  [ 動画を見る] 

[4339]すべてのシートを順に処理する

2015-05-21 21:26:30 山田 将之さんからの投稿です。

簡単でした。

[ 続きを読む ]  返信件数:0件  [ 動画を見る] 

[4271]重複しないリストを作成する(並べ替えから行う)

2015-05-15 20:32:55 watanbe daichiさんからの投稿です。

ありがとうございます。
もう一度よく見て実施したところ、できました☆
Range("A1:B317").Sort Key1:=Range("B1"), Order1:=xlAscending, Header:=xlYes

Dim hida As Long
Dim migi As Long
migi = 2
For hida = 2 To 317
If Range("B" & hida).Value <> Range("B" & hida - 1).Value Then
Range("D" & migi).Value = migi - 1
Range("E" & migi).Value = Range("B" & hida).Value
migi = migi + 1
End If
Next
End Sub

コメント頂いた様に2003と同じことが入っていました。
ヘルプを参照しながらでしたが、headerの後ろでいくつかのパターンがあるのですね。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[4260]重複しないリストを作成する(並べ替えから行う)

2015-05-14 20:08:27 watanbe daichiさんからの投稿です。

いつもありがとうございます。
EXCEL2010以降のものなので、私も下記のコメントの様な状況になりました。
Range("B1").Select
ActiveWorkbook.Worksheets("main").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("main").Sort.SortFields.Add Key:=Range("B1:B317"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("main").Sort
.SetRange Range("A1:B317")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

回答でいただいている様にできるだけシンプルなコマンドにしたいと思いました。
コメントで記載されている内容を実行して考えてみようと思います。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[4097]データ転記先のシートすべてに対し、罫線を引く等の後処理をする

2015-04-16 20:36:51 井上 聡さんからの投稿です。

罫線の範囲を設定する方法について
Dim InMx As Long
InMx = Range("B" & Rows.Count).End(xlUp).Row
Range("B16:K" & InMx + 1).Select
この場合は、変数の範囲が選択されました。
("K" & Rows.Count).End(xlUP)のつもりでしたが範囲が選択されません。
  Range("B16:K" & Rows.Count).End(xlUP).Select
一行で表すにはどうすればいいのでしょうか。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[3759]データ転記先のシートすべてに対し、罫線を引く等の後処理をする

2015-02-07 18:13:38 佐々木久さんからの投稿です。

ファイル enshu2100などで伝票作成のボタンを押すと、
「実行時エラー '1004':
この名前は既に使用されています。別の名前を入力してください。」
とエラーが出てしまいます。
エクセルファイルは「愛知販売」シートが作成され、
「Sheet2」が作成された時に上記のエラーが表示されます。
コードのエラー箇所は
「Sub CreateSheets」の
「ActiveSheet.Name = w.Range("B" & c).Value」
が黄色く反転します。
エラー解消方法はありますでしょうか?
思いつく、余計なことは
「Option Explicit」
の下に
Dim wFm as Long
Dim wTo as Long
を入力してマクロを数回実行したぐらいです。

よろしくお願いします。

佐々木

[ 続きを読む ]  返信件数:2件  [ 動画を見る] 

[3358]データ転記先のシートすべてに対し、罫線を引く等の後処理をする

2014-11-30 20:20:40 受講生さんからの投稿です。

小川先生
伝票作成はメールセミナーを先に見ましたが、動画ではメールセミナーとは違うやり方も説明されていて、参考になる部分も多かったです。
「罫線を最終行より1行多く引かないとエラーとなる」とのことでしたが、当方の環境(Excel2010)では特にエラーは出ませんでした。
また、Withを使いこなせるようなるために、あえてオブジェクト型変数を使わずに作成してみました。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[2709]データ転記先のシートすべてに対し、罫線を引く等の後処理をする

2014-10-13 11:01:36 受講生さんからの投稿です。

伝票作成マクロ、財務という仕事柄、大変参考になりました。
もう少し復習した後、発展編2に進んでいこうかと思います。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[2708]取引先ごとに作成したシートにデータ転記を行う2

2014-10-13 10:13:29 受講生さんからの投稿です。

伝票マクロ3部構成、パート2も理解できました。
続きのパート3も楽しみです。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[2705]取引先ごとに作成したシートにデータ転記を行う

2014-10-12 16:51:12 受講生さんからの投稿です。

3部構成の最初のパート、理解できました。
続きの2つが楽しみです。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[2676]取引記録に登場するすべての取引先名のシートを作成する(IDの割り振りも行う)

2014-10-09 06:35:27 受講生さんからの投稿です。

何度も取り組むと手が慣れてきて、本当に嬉しいです。
「特打」同様、手を動かしてもっともっと慣れていきたいと思っています。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

123>

各講座ごとのメッセージを見る場合はこちら

 

まずはここから!スマホでも学べる無料動画講座

今なら先着30名限定で無料!定価4,800円の、初心者のためのエクセルマクロ動画講座。
  1. Excel 97~Excel 2016まですべて対応。動画本数20本、総再生時間2時間44分53秒
  2. PC, Mac, iPhone, iPad, Androidのお好みの環境で、いつでも好きなときに学べます。
2004年から10年間述べ3,000名以上に実施した研修の経験と実績を集約した講座です。
いますぐ無料で試してください。

トップへ