- 締切済み
エクセルで。
エクセルで一つのセル(名前の欄)だけ変えて 他のセルはそのままで印刷する方法はありませんか? 名前は別のエクセルの表になっています。
- みんなの回答 (9)
- 専門家の回答
みんなの回答
- ja7awu
- ベストアンサー率62% (292/464)
> >Sub 他ブックデータ差込印刷() > これも貼り付けますか? そのとおりです。 「Sub 他ブックデータ差込印刷()」の行から「End Sub」の行までを貼り付けます。
- ja7awu
- ベストアンサー率62% (292/464)
#6 ですが、ちょっと確認ですが・・・ > 名前は別のエクセルの表になっています。 となっていますが、この「別のエクセル」というのは、普通に解釈すると 別のブックを意味するのですが、「別のシート」の意味でしょうか? もし、それであれば、#6 でなく、次のような感じになります。 " " の中を実情に合うように変更して実行します。 Sub SashikomiPrint() Dim Meibo As Worksheet Dim Kojin As Worksheet Dim Rng As Range Dim R As Range Set Meibo = Worksheets("名簿") '<---- 名簿のシート名指定 Set Kojin = Worksheets("印刷") '<----- 印刷のシート名指定 Set Rng = Meibo.Range("A2:A61") 'データ(氏名)の範囲 For Each R In Rng Kojin.Range("B2").Value = R.Value ' 差込する名前セルを指定 Kojin.PrintOut Next R Set Meibo = Nothing Set Kojin = Nothing End Sub
- imogasi
- ベストアンサー率27% (4737/17069)
印刷するシートをSheet1 毎通変えるセルをSheet1のC3 印刷する範囲をSheet1のA1:J30 Sheet2のB列の第1行から毎行別人の名前があると して、10人分は Sub test01() Dim sh1 As Worksheet Dim sh2 As Worksheet Set sh1 = Worksheets("sheet1") Set sh2 = Worksheets("sheet2") For i = 1 To 10 sh1.Cells("c3") = sh2.Cells(i, "B") Sh1.Range("a1:j30").PrintOut Next i End Sub
- ja7awu
- ベストアンサー率62% (292/464)
VBAで宜しければ、次の手順で他ブックからのデータを差し込み印刷が 出来ますので宜しかったらテストしてみてください。 以下に詳しい手順を書きますので、この通り実行すれば簡単に出来ると思います。 印刷枚数が、かなり多い場合は、データ範囲を2~3セルにしてPreviewOnOff = 1 に してプレビューで確認しながら印刷し、OKだったら、残りの範囲に直して、 今度は、PreviewOnOff = 0 にして、一気に印刷すると良いと思います。 [操作手順] 1.Alt + F11 で VBE(Visual Basic Editor)を開きます。 2.VBE のメニューから[挿入] -->[標準モジュール] を指定します。 3.モジュールウィンドウに下記コードをコピーして貼り付けます。 コードの先頭部分6ヶ所を実情に合わせ設定事項を変更します。 (上5つは、文字列で指定。6つ目は、0 か 1 の数値で指定します。) 4.Alt + Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。 5.メニューから[ツール]-->[マクロ]-->[セキュリティ]で「セキュリティレベル」を 「中」にして[OK]します。 6.実行するときは、Alt + F8 (メニューから[ツール]-->[マクロ]-->[マクロ])で 「他ブックデータ差込印刷」を指定し、[実行]ボタンを押します。 Sub 他ブックデータ差込印刷() ' -------1セル差込印刷 設定事項 ( " "の中を設定してください。)--- Const DBkN = "C:\test\data.xls" ' <--- 差し込むデータブック指定 Const DShN = "Sheet1" ' <--- 名簿のシート名を指定 Const Hani = "A2:A11" ' <--- 上記の差し込むデータ範囲指定 Const InsatsuSheet = "印刷" ' <---- 印刷するシート名を指定 Const SasikomiIchi = "B2" ' <---- 上記の差し込みするセル指定 Const PreviewOnOff = 1 ' <-- 0=プレビューで確認しない 1=する ' -------------------------------------------------------------- Dim DBk As Workbook Dim DSh As Worksheet Dim ISh As Worksheet Dim Rng As Range Dim N As Integer If Dir(DBkN) = "" Then MsgBox DBkN & " ファイルが存在しません", vbExclamation Exit Sub End If Set DBk = Workbooks.Open(DBkN, , True) For N = 1 To DBk.Worksheets.Count If DBk.Worksheets(N).Name = DShN Then Set DSh = DBk.Worksheets(N) Exit For End If Next N If N > DBk.Worksheets.Count Then DBk.Close MsgBox DShN & " シートが存在しません。", vbExclamation Exit Sub End If ThisWorkbook.Activate For N = 1 To Worksheets.Count If Worksheets(N).Name = InsatsuSheet Then Exit For Next N If N > Worksheets.Count Then MsgBox InsatsuSheet & " 印刷指定シート名が存在しません。", vbInformation DBk.Close Exit Sub End If Worksheets(InsatsuSheet).Select For Each Rng In DSh.Range(Hani) Range(SasikomiIchi).Value = Rng.Value ActiveSheet.PrintOut Preview:=-PreviewOnOff Next Rng DBk.Close Set DBk = Nothing Set DSh = Nothing End Sub
補足
>モジュールウィンドウに下記コードをコピーして貼り付けます。 >Sub 他ブックデータ差込印刷() これも貼り付けますか?この後にConst DBkN 以下6項目設定して貼り付けその後Dim DBk As Workbook 以下を貼り付ければよろしいでしょうか?
- neKo_deux
- ベストアンサー率44% (5541/12319)
「Word 差込印刷」で情報収集してみてください。 以下のサイトの説明が分かりやすそうでした。 パソコン活用講座 - Wordの「差込印刷」機能を使う! http://www.miyazaki-cci.or.jp/nichinan/pc/case9.html ゆうあいネット - Word差込印刷 http://www.moka-tcg.ed.jp/yuuai/oshirase/word/sasi/
- popesyu
- ベストアンサー率36% (1782/4883)
おそらく差込印刷のことを言ってるとおもうのですが、エクセル単体で行うならVBAなどを駆使しないと無理です。 エクセルで作った氏名をワードに渡して差込印刷する方法がスマートで分りやすいかと思います。
お礼
ワードに渡して差込印刷する方法を教えてください。
- neKo_deux
- ベストアンサー率44% (5541/12319)
エクセル→エクセルの差込印刷のような処理でしょうか? シート印刷: A1:<名前> B1:さん、本日は… A2:…ですので、宜しくお願い申し上げます。 シート名前一覧 A1:山田太郎 A2:川崎二郎 A3:田川三郎 … を印刷して、 「山田太郎さん、本日は… …ですので、宜しくお願い申し上げます。」 「川崎二郎さん、本日は… …ですので、宜しくお願い申し上げます。」 「田川三郎さん、本日は… …ですので、宜しくお願い申し上げます。」 ・ ・ のようになって欲しい。 -- Excel→Wordなら分かるんですが…。
補足
そうです! 変えない部分はもう1度ワードに作ってもかまいません。それならできますか?
- kotoko
- ベストアンサー率33% (1142/3362)
こんにちは。 「名前を付けて保存」で「No.2」として既存のファイルは残したまま同じ内容のものを保存した後に、名前だけ変えて新しいファイルを作るというのではいけませんか?
- maruru01
- ベストアンサー率51% (1179/2272)
こんにちは。maruru01です。 まったく意味が分かりません。 そのセルに別の名前を打ち込んだら、他のセルの値が変更されるように、他のセルに数式が入っているのですか? また、何をしたいかも分かりません。 もっと具体的に質問して下さい。
お礼
どのセルにも何も式は入っていません。
補足
すみません。 表があって、個人の名前だけを打ち変えて印刷したいのです。前任者はひとつずつ名前を打ち直して出していたらしいです。名前の一覧はあるのでそれを使って名前だけを変えて印刷をだすことはできないでしょうか?
お礼
すごい・・・ 今度時間のある時にゆっくる試してみます! できたら嬉しいだろうなぁ☆ ちなみに「別のエクセル」は別のブックの意味です。 ややこしい表現をしてすみませんでした。