Excel VBA 質問スレ Part63

■ このスレッドは過去ログ倉庫に格納されています
2019/09/16(月) 19:34:59.04ID:emfTAhXr0
!extend:checked:vvvvv:1000:512

ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK

※前スレ
Excel VBA 質問スレ Part62
https://mevius.5ch.net/test/read.cgi/tech/1561303297/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2019/09/16(月) 19:37:44.33ID:oeAiWNxe0
ぽこちん
2019/09/16(月) 20:59:24.42ID:dQXELjkB0
ちんぽこ
2019/09/16(月) 21:35:06.62ID:umLXld9Q0
おつちん
2019/09/16(月) 21:37:35.26ID:+LXKkUCe0
糞レスで埋めるなら前スレのCSVファイルをQueryTablesで読むサンプル残しとく超参考になった
967 デフォルトの名無しさん (ワッチョイ 1fce-Nl8y) sage ▼ New! 2019/09/13(金) 00:48:49.27 ID:VS8vqVEc0 [1回目]
文字列として読み込めば0は消えない
あとLineInputよりクエリのがずっと速い

サンプル

Sub CSVread()
  With Worksheets("Sheet1") '読み込むシート
  With .QueryTables.Add(Connection:="TEXT;C:\tmp\test.csv", Destination:=.Range("A1")) 'ファイル名とセル位置
    .TextFilePlatform = 932 '文字コード指定
    .TextFileCommaDelimiter = True 'カンマ区切り指定
    .RefreshStyle = xlOverwriteCells 'セルに上書き
    .TextFileColumnDataTypes = Array(xlTextFormat, xlTextFormat, xlTextFormat) '各列を文字列に指定
    .Refresh 'シートに読み込んで表示
    .Delete 'クエリを切断
  End With
  End With
End Sub
2019/09/16(月) 21:50:00.95ID:oeAiWNxe0
ぽこちん
7デフォルトの名無しさん (ワッチョイ 9f8e-J3NS)
垢版 |
2019/09/16(月) 22:04:26.30ID:mBMfeEcT0
全部丸投げの教えてクレクレは死ね
2019/09/17(火) 00:12:51.48ID:QL/1GsWjx
LongLong型に定数値として4,294,967,296を与えておきたいのですがLongの範囲を超えているせいか、必ず後ろに#が付いてしまいます
用途としては強引にunsigned Long的に使う為のオフセットなのですが#を付けない方法はありますか?
2019/09/17(火) 00:26:07.74ID:dEY9k2Om0
Verylong型
2019/09/17(火) 01:14:04.05ID:chWRxzLY0
ちんぽこ
2019/09/17(火) 05:14:20.51ID:x3oFyaLA0
>>8
式は書けないんだったっけ…
2019/09/17(火) 12:34:56.30ID:WreyM4md0
LongPtr
2019/09/17(火) 19:25:37.80ID:gAW2iwiH0
前スレの最後でセルに色をつけるコードを作って頂いた者です。職場で試してみましたが思い描いた通りに動いてくれました!これを機に自分で作れるように勉強したいと思います。作って下さった方、本当にありがとうございました…!
2019/09/17(火) 19:44:50.07ID:1jOFcYgS0
ぽこちん
2019/09/17(火) 22:00:10.80ID:g2VoYh6px
スレチなのは分かってるけど詳しい人がここにしかいなさそうだから、もし知っていたら教えてほしい

ブックに保存されたクエリをOLAP等で使い回すためにODCファイルとしてエクスポートしたいんだが、「既存の接続」コマンドからクエリのプロパティを開いても「接続のエクスポート」のボタンが無効になっていてうまくエクスポート出来ない
どうしたらうまくエクスポートできるのか知りたい
2019/09/18(水) 00:53:52.38ID:2k/sPvaQ0
珍ぽこりん
17デフォルトの名無しさん (ワッチョイ 9f64-+dKN)
垢版 |
2019/09/18(水) 02:08:49.51ID:IoDIi0WV0
すみません。
エラーが分からず・・・教えてください。

下記コードで、”型が一致しません”というエラーが出ています。

Dim Ringi1 As Worksheet
ThisWorkbook.Activate
Set Ringi1 = Workbooks(Range("B6")).Worksheet("Sheet1")  ←エラー

ThisworkbookのB6には”テストファイル.xlsx”が入っています。

よろしくお願いします。
2019/09/18(水) 02:37:53.20ID:6F01cvXOx
>>17
Worksheet(Range("B6"))じゃなくてWorksheets(Range("B6").Value)でしょう

あとRange("B6")はどのシートのB6セルなのかな?
この書き方だとThisWorkbookがActivateされたときにアクティブになってるシートのB6セルが参照されてしまうので、ちゃんとシートを指定して書いたらどうかな
例えばThisWorkbookの一番目のシートのB6セルにファイル名が書かれている前提ならこうなる

Dim Ringi1 As Worksheet
ThisWorkbook.Activate
Set Ringi1 = Application.Workbooks(ThisWorkbook.Worksheets(1).Range("B6").Value).Worksheets("Sheet1")
2019/09/18(水) 06:35:56.16ID:2k/sPvaQ0
ポコポコてぃんてぃむ
2019/09/18(水) 07:18:06.31ID:Sjvl4q9oM
>>8
つけないのは無理だったと思う
今スマホだから試せないけど # が嫌というだけなら ^ ではどうかな?
https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/longlong-data-type
2019/09/18(水) 19:03:21.51ID:2k/sPvaQ0
てぃむてぃむ
2019/09/18(水) 22:18:32.08ID:TxLlA7PYp
ブックAのシート1〜iまでのA1セルの数字を合計した数字をブックBのA1セルに転記したいのですが、どう書けばいいでしょうか?
2019/09/18(水) 22:31:17.98ID:ZRtblFe80
>>22
マルチポストはやめよう
2019/09/19(木) 00:39:56.20ID:oPZRSehu0
VBAのエディタに未だに慣れない・・・visual studioみたいな至れり尽くせりな開発環境があればなぁ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。