戻る  □一般操作のサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 最新記事及び返信フォームをトピックトップへ ]
このトピック参照回数 :
〇のある列以外を削除して印刷シートに貼り付けて印刷を行いたいです。

    [195502] 〇のある列以外を削除して印刷シートに貼り付けて印刷を行いたいです。-

    ■親トピック/記事引用/メール受信=OFF■

    □投稿者/ ゆきな -(2023/01/19(22:54))
    □U R L/

      罫線もコピーしたいので、ソートがすると罫線が変わってしまいますので、
      下記のような方法しか思い当たりません。
      何かもっとよい方法があれば教えて頂きたいです。


      下記のような感じに入力されており、「データーシート」とします。
      A B  C  D  E F  G  H  I  J  K  L
      4  あ い ウ え お か き く け こ さ
      5〇 あ い ウ え お か き く け こ さ
      6  あ い ウ え お か き く け こ さ
      7〇 あ い ウ え お か き く け こ さ
      8〇 あ い ウ え お か き く け こ さ
      9  あ い ウ え お か き く け こ さ


      1.A4〜L9セルを全てコピーして、「コピーシート」のA4にセルに貼り付けます。
      2.A行の〇のある列以外のセルを削除させると下記のようになると思います。

      A B  C  D  E F  G  H  I  J  K  L
      4〇 あ い ウ え お か き く け こ さ
      5〇 あ い ウ え お か き く け こ さ
      6〇 あ い ウ え お か き く け こ さ

      3.上記の3行を「印刷シート」のA4セルにコピーします。(〇の数により行数は変化)

      説明がわかりにくいとは思いますが、宜しくお願い致します。

      win10 office2016




    [195506] Re[1]: 〇のある列以外を削除して印刷シートに貼り付けて印刷を行いたいです。-

    記事引用/メール受信=OFF■

    □投稿者/ kazuo -(2023/01/21(12:05))
    □U R L/

      まずは、excelの行・列をキチンと理解しましょう。
      Excel の仕様と制限 で検索
      >ワークシートの最大サイズは 1048576 行× 16384 列です

      データシートの該当行を手動でコピペするならどうしますか?
      私なら5行目を選択し、Ctrlキーを押しながら7行目と8行目を選択し、Ctrlキーを離し、
      Ctrl+c(コピー)を押し、
      印刷シートのA4を選択し、Ctrl+v(貼り付け)します。

      VBAにするなら、A列を4行目から最終行まで見て、〇のあるセルをUnionでセル集合を作り、
      EntireRowで拡張(さらに必要ならA:L列とIntersect)したセル集合を
      Destinationを印刷シートのA4セルとしてCopyメソッドを使い記載します。




    [195508] Re[2]: 〇のある列以外を削除して印刷シートに貼り付けて印刷を行いたいです。-

    記事引用/メール受信=OFF■

    □投稿者/ kazuo -(2023/01/21(12:47))
    □U R L/

      連投失礼。
      データシートに手を加えて良いなら、
      項目行を追加し、〇でフィルター後コピペし、項目行を削除します。




    [195509] Re[3]: 〇のある列以外を削除して印刷シートに貼り付けて印刷を行いたいです。-

    記事引用/メール受信=OFF■

    □投稿者/ ゆきな -(2023/01/21(22:06))
    □U R L/

      説明が下手ですみません。

      下記のように入力してあります。
      A行をソートすればA4、A5、A6行に〇が入っている行が3行になるので、A7〜A9の行を削除すれば
      いいのですが、セル毎に罫線で色わけしているので、罫線の色が変わってしまいます。

      ですので、
      A行で〇が入力してある行以外を、行の削除を行い削除するVBAできますでしょうか?
      それから先は私でなんとかします。
      よろしくお願いいたします。

       A  B  C 
      4  あ い 
      5〇 あ い 
      6  あ い 
      7〇 あ い 
      8〇 あ い 
      9  あ い 




    [195511] Re[4]: 〇のある列以外を削除して印刷シートに貼り付けて印刷を行いたいです。-

    記事引用/メール受信=OFF■

    □投稿者/ kazuo -(2023/01/22(14:02))
    □U R L/
      >A行で
      >行以外
      >行の削除
      
      A行のなかにA行以外の行があるのですか?
      まず、この認識をなんとかして下さい。
      
      Sub 選択貼り付け()
          Dim rR As Range
          Dim r As Range
          Dim fRng As Range
          
          Set rR = Worksheets("データーシート").Range("B4").CurrentRegion
          Set rR = Intersect(rR, rR.Offset(4 - rR.Row))
          
          For Each r In rR.Columns("A:A").Cells
              If r.Value = "〇" Then
                  If fRng Is Nothing Then
                      Set fRng = r
                  Else
                      Set fRng = Union(fRng, r)
                  End If
              End If
          Next
          If Not fRng Is Nothing Then
              fRng.EntireRow.Copy Worksheets("印刷シート").Range("A4")
          End If
      End Sub
      
      Sub フィルター貼り付け()
          With Worksheets("データーシート")
              .Rows("4:5").Insert
              .Range("A5").Value = "項目"
              .Range("A5").CurrentRegion.AutoFilter 1, "〇"
              .AutoFilter.Range.Offset(1).Copy Worksheets("印刷シート").Range("A4")
              .Rows("4:5").Delete
          End With
      End Sub
      
      Sub 行の削除()
          With Worksheets("コピーシート")
              .Range("A3").Value = "項目"
              .Range("A3").CurrentRegion.AutoFilter 1, "<>〇"
              .AutoFilter.Range.EntireRow.Delete
              .Rows(3).Insert
          End With
      End Sub
      


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [195513] Re[5]: 〇のある列以外を削除して印刷シートに貼り付けて印刷を行いたいです。-

    記事引用/メール受信=OFF■

    □投稿者/ kazuo -(2023/01/22(14:48))
    □U R L/
      また、訂正です。
      今回のオートフィルターって項目行は何でも良かったのでデータ的にはシートをいじらずに済みます。
      行の削除も同じです。
      
      Sub フィルター貼り付け()
          With Worksheets("データーシート")
              .Range("A3:L4").CurrentRegion.AutoFilter 1, "〇"
              .AutoFilter.Range.Offset(4 - .AutoFilter.Range.Row).Copy Worksheets("印刷シート").Range("A4")
              .AutoFilterMode = False
          End With
      End Sub
      


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [195515] Re[6]: 〇のある列以外を削除して印刷シートに貼り付けて印刷を行いたいです。-

    解決!!ありがとうございました! / 記事引用/メール受信=OFF■

    □投稿者/ ゆきな -(2023/01/22(20:35))
    □U R L/

      kazuo様

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

      また、お恥ずかしい今頃になって列と行を逆だと思っていました。


      間違った説明で、説明も下手ですみませんでした。

      勉強になりました。

      感謝します。助かりました。



このトピック内容の全ページ数 / [0]

このトピックに書きこむ
Name/
E-Mail/

└>このツリーのレス記事をメールで受信しますか? YES/ NO/
Title/
URL/
Comment/ 通常モード->  図表モード-> (←の場合適当に改行を入れて下さい)
タグが使用できます。例 ⇒ <font color="blue">文字</font>
解決!!ありがとうございました! 解決       保留中です・・・ 保留        迷宮入りorほかあたって見ます・・ 迷宮入       すいませ〜ん。誰か〜! Help! ←※回答者専用
解決したらチェック       保留(コードテスト中など・・)         解決不可orレスが全く付かなくてほかのサイトに行くときなど・・
削除キー/
(半角8文字以内) 


- Child Forum -
Edit:ゆう-G