Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


181 / 3841 ページ ←次へ | 前へ→

【78848】列の挿入
質問  トシ坊 E-MAIL  - 17/2/11(土) 9:02 -

引用なし
パスワード
   B2のセルからF2のセルまで結合されているシートで
C列を選択し、挿入すると
Columns("C:C").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
上記のマクロが作成されますが、上記マクロを実行すると
1行目の所でB列からF列が選択されB列の前に5列ついかされてしまいます。
結合されたセルが有ってもC列に1行追加するには、どのようにすれば良いのでしょうか
過去ログにあってもよさそうなのですが見つけることができませんでした
宜しくお願い致します。
・ツリー全体表示

【78847】Re:CSVファイルを指定列に読み込み
発言  β  - 17/2/10(金) 15:15 -

引用なし
パスワード
   ▼JJ さん:

処理コードを書いて提示することも考えましたが
もし、本当に初心者でVBAのことが、ほとんどわからないということであれば
以下の操作をマクロ記録すると、コードが生成されます。
エクセルブックとしてCSVファイルを開きますので、もしCSVファイルが
1048576行超のファイルであれば具合悪いですが。

1.ファイルメニューで【開く】
2.すべての種類を指定して、該当の master.csv を指定。
3.読み込まれたCSVファイルのシートのA1を選択してCtrl/Shift/↓
4.選択された領域を Ctrl/c
5.マクロブックのSheet5 を表示。
6.M列データ最終行のセルの次のセルを選択して Ctrl/v。
7.Escキーを押してコピーモード解除
8.CSVファイルを表示して保存なしで閉じる。

どんどん転記していくといつかはエクセルの行の限界(1048576)になり
エラーになりますが、とりあえずは、こういったコードでスタートされてはいかが?

もちろん、マクロ記録されたコードは、そもそもが煩雑なコード記述になっていますので
それをスッキリさせるとか、固定セル領域になっているところを変数化するといった
お化粧直しは必要ですが。

まず、この線でがんばってみてください。
変数化の段階で壁にぶつかれば、それまでに出来上がったコードをアップして
SOSを出してください。

★CSVファイル側、1行目にタイトル行があるなら、
 手順3は A2 を選択して行ってください。
・ツリー全体表示

【78846】Re:CSVファイルを指定列に読み込み
質問  JJ  - 17/2/10(金) 11:13 -

引用なし
パスワード
   ▼β さん:
>▼JJ さん:
>
>1.CSVファイルはメモ帳等のテキストエディタで入力しているのでしょうか?

VB2013からCSV出力しています。
>
>2.入力は 合計数 合計時間 日付[改行] といった入力ですか?
>  それとも 合計数,合計時間,日付[改行] といった入力ですか?

今、確認した所

合計時間[改行] 
合計数[改行] 
日付[改行] 

です。

>3.前者だとすると間のスペースは半角ですか、全角ですか?

下に改行なのでスペースはありません
>
>4.このCSVファイルをエクセルで開くと 値は A列のみに表示されていますか?
>  それとも A,B,C列にわかれて表示されていますか?

A列のみです

>
>5.エクセルへの取り込みですが、既存データに追加ですか?
>  それとも、常に1行目から転記ですか?

M列の既存データにCSVの先頭から取り込みます
sheet5 の場所に毎日追記していきます。

細かく指示して頂きありがとうございます。
・ツリー全体表示

【78845】Re:CSVファイルを指定列に読み込み
発言  β  - 17/2/10(金) 9:35 -

引用なし
パスワード
   ▼JJ さん:

1.CSVファイルはメモ帳等のテキストエディタで入力しているのでしょうか?

2.入力は 合計数 合計時間 日付[改行] といった入力ですか?
  それとも 合計数,合計時間,日付[改行] といった入力ですか?

3.前者だとすると間のスペースは半角ですか、全角ですか?

4.このCSVファイルをエクセルで開くと 値は A列のみに表示されていますか?
  それとも A,B,C列にわかれて表示されていますか?

5.エクセルへの取り込みですが、既存データに追加ですか?
  それとも、常に1行目から転記ですか?
・ツリー全体表示

【78844】Re:CSVファイルを指定列に読み込み
質問  [名前なし]  - 17/2/10(金) 9:05 -

引用なし
パスワード
   ▼β さん:
>▼JJ さん:
>
エクセルは2010です

CSVにはデータが 合計数 合計時間 日付 の3個を
毎日記録して 改行しながら下へ下へ上書きしています

となると上段からのデータを エクセルのM列に入れたい
ということになります。

お返事ありがとうございます。
・ツリー全体表示

【78843】Re:関数の挿入 式を教えてください
お礼  momo  - 17/2/9(木) 22:34 -

引用なし
パスワード
   ▼γ さん:分りました!すみませんでした
         質問は、削除します
>▼momo さん:
>>わからないので、ここで質問させていただきました。
>
>自分の都合だけで場違いな質問するのはやめましょう。
>VBAと無関係なら、別のところで質問して下さい。
・ツリー全体表示

【78842】Re:関数の挿入 式を教えてください
発言  γ  - 17/2/9(木) 22:32 -

引用なし
パスワード
   ▼momo さん:
>わからないので、ここで質問させていただきました。

自分の都合だけで場違いな質問するのはやめましょう。
VBAと無関係なら、別のところで質問して下さい。
・ツリー全体表示

【78841】Re:関数の挿入 式を教えてください
発言  momo  - 17/2/9(木) 22:29 -

引用なし
パスワード
   ▼γ さん:
>VBAで関数を挿入するんですか?
>なぜ関数なんでしょうか?

ここは、VBA専門の質問場所ですが
わからないので、ここで質問させていただきました。

Excelで作成しています

もしお分りでしたら
教えていただきたいです
すみません(*_*)
・ツリー全体表示

【78840】Re:worksheetのコピー貼り付け
発言  γ  - 17/2/9(木) 22:23 -

引用なし
パスワード
   ヒントを回答しているのに無視ですか?
返事くらいしたらどうでしょう。
・ツリー全体表示

【78839】Re:関数の挿入 式を教えてください
発言  γ  - 17/2/9(木) 22:22 -

引用なし
パスワード
   VBAで関数を挿入するんですか?
なぜ関数なんでしょうか?
・ツリー全体表示

【78838】関数の挿入 式を教えてください
質問  momo  - 17/2/9(木) 22:08 -

引用なし
パスワード
  

シート1は、このような感じで入力しています

氏名    組    列(1から4あり)  番号(1か2 のみ)

鈴木     A     4           1
木下     A     1           2
佐々木   B      1           2
山下    B      3           1

シート2

▼A組とB組の枠を作成しています 
  1シートのAなのかBなのか組分けを読み取り
  その表の中へ反映されるようにしたいです 
  また、1から4列なのかを読み取り、またその中の
  1番か2番を読み取り それを反映させたいです

A組                B組  

1列 1番           
    2番   木下       佐々木

2列  1番
     2番

3列  1番             山下
     2番

4列  1番  鈴木
     2番

説明下手ですみません。
・ツリー全体表示

【78837】Re:CSVファイルを指定列に読み込み
発言  β  - 17/2/9(木) 18:45 -

引用なし
パスワード
   ▼JJ さん:

csvファイルもイメージとしては列がたくさんあって行もたくさんありますね。
その中に値もたくさんあるわけです。

>CSVファイルの文字列を
>エクセルのsheet5 のM1、2.3と可能な限り読み込みをしたいのですが

M列に取り込む値は、csvファイルにあるすべての値ですか?
それとも、特定の列のデータですか?

前者だとしたら、『可能な限り』ですから、エクセルの最大行数分の値ですね?
xl2003以前であれば 65536、xl2007以降であれば、1048576。

エクセルバージョンは何ですか?

また、空白の値も取り込むのですか?
それとも、空白の値は取り込まず、値のあるものだけを上づめで取り込むのですか?
・ツリー全体表示

【78836】CSVファイルを指定列に読み込み
質問  JJ  - 17/2/9(木) 16:28 -

引用なし
パスワード
   初めまして、VBAで質問です

CSVファイルの文字列を

例:
master.csvを
エクセルのsheet5 のM1、2.3と可能な限り読み込みをしたいのですが

VBAは触ったことがなく
やり方がわかりません。

勉強のために
説明していただけると
ありがたいです
・ツリー全体表示

【78835】Re:再質問 あり ランダム数字から別シー...
お礼  ぺぺ  - 17/2/9(木) 16:14 -

引用なし
パスワード
   ▼マナさん β さん:

入力間違いでした!
うまくできました!教えてくださり
ありがとうございました!!

>▼ぺぺ さん:
>
>こちらでは
>
>=IFERROR(INDEX(Sheet1!A:A,MATCH($D2,Sheet1!$C:$C,0)),"")
>
>これで、問題なく、表示されていますが?
・ツリー全体表示

【78834】Re:特定の指名した氏名にバックカラーを...
発言  β  - 17/2/9(木) 10:17 -

引用なし
パスワード
   ▼トキノハジメ さん:

A1から右、1行目のセルに条件付書式をセットするコードサンプルです。

たとえば

  With Range("A1", Cells(1, Columns.Count).End(xlToLeft))

これを

  With Range("A1", ActiveSheet.UsedRange)

にすれば、A1から始まるシート内全領域に一度にセットすることも可能です。

Sub Sample()
  With Range("A1", Cells(1, Columns.Count).End(xlToLeft))
    .FormatConditions.Delete
    .FormatConditions.Add Type:=xlExpression, Formula1:= _
      "=OR(A1=""山田"",A1=""沼田"")"
    With .FormatConditions(.FormatConditions.Count).Interior
      .PatternColorIndex = xlAutomatic
      .Color = vbRed
      .TintAndShade = 0
    End With
    .FormatConditions.Add Type:=xlExpression, Formula1:= _
      "=OR(A1=""川田"",A1=""西村"")"
    With .FormatConditions(.FormatConditions.Count).Interior
      .PatternColorIndex = xlAutomatic
      .Color = vbCyan
      .TintAndShade = 0
    End With
  End With
End Sub
・ツリー全体表示

【78833】Re:特定の指名した氏名にバックカラーを...
発言  β  - 17/2/9(木) 9:54 -

引用なし
パスワード
   ▼トキノハジメ さん:

>氏名はプログラムの中で VBA にて別表からコピーしてきた表なので流れの中で
>
>VBA で組み込めればと思って投稿してみたのですが

それでは、その別マクロをアップすれば、具体的な回答がつくと思いますよ。
・ツリー全体表示

【78832】マクロ実行後、IMEが変更できない
質問  イッケン  - 17/2/9(木) 8:59 -

引用なし
パスワード
   シール発行のVBAをを作成しています。
フォームを立ち上げて、枚数を入力して
印刷ボタンを押して印刷しています。
フォームを閉じて、次のシール発行のため、
シートの値を変更しようとすると、
IMEが「半角/全角」キーを押しても
半角英数字のまま切り替わらない。
ロックされてしまったような状態です。
Excelを閉じると半角/全角で切り替えれようになります。

マクロ内でIMEを指定したり変更などしていないので、
理由が全くわかりません。
アドバイスお願い致します。

環境
Winsows7(32bit)
Office2010
・ツリー全体表示

【78831】Re:再質問 あり ランダム数字から別シー...
発言  β  - 17/2/9(木) 0:02 -

引用なし
パスワード
   ▼ぺぺ さん:

こちらでは

=IFERROR(INDEX(Sheet1!A:A,MATCH($D2,Sheet1!$C:$C,0)),"")

これで、問題なく、表示されていますが?
・ツリー全体表示

【78830】Re:再質問 あり ランダム数字から別シー...
発言  マナ  - 17/2/8(水) 22:19 -

引用なし
パスワード
   ▼ぺぺ さん:
>実際のやつを修正しましたが、やはり0と出てしまいます

そうですか。だとしたら、わたしには無理です。
データが空欄でなければ、ちゃんと結果が表示されると思うのですが…
・ツリー全体表示

【78829】Re:再質問 あり ランダム数字から別シー...
発言  ぺぺ  - 17/2/8(水) 22:10 -

引用なし
パスワード
   ▼マナ さん:
>▼ぺぺ さん:
>>=IFERROR(INDEX(Sheet1!A:A,MATCH($D2,Sheet1!$C:$C,0)),"")
>
>E2じゃなく、D2ではありませんか? ↑修正しました

すみません。間違えました。
実際のやつを修正しましたが、やはり0と出てしまいます
・ツリー全体表示

181 / 3841 ページ ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free