--

--

コメント

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
管理者にだけ表示を許可する

この記事のトラックバックURL

http://moconaru.blog.fc2.com/tb.php/332-1dc4aedf

03

16

コメント

圧縮

自分メモも含めて

最近、仕事でAccess上で必要になったので
パスワード付きのzipファイルを自動で作成するツールを作りました。(`・ω・´)
下記を参考にちょっくら作成
参考にしたところ

Vista以降 パスワード付きzip機能無くなったらしい
そんなこと知らんかったな(・ω・`)
ということでVBAで作成

VBAのいいところは日本語でわかりやすく作れるところかなぁ
Lhaplusを実行させて作成するもの

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
'Lhaplusでパスワードつきのzipファイルを作成するよ
'file ファイル名
'pw パスワード
'path 対象ファイルがあるフォルダまでのパス

Sub 圧縮(file As String, pw As String,path As String)
Dim LhaplusPath As String
Dim 対象ファイル As String
Dim 圧縮Path As String
Dim WShell

'Lhaplusのexeがあるexeまでのパスを指定
LhaplusPath = "c:\Program Files\Lhaplus\Lhaplus.exe"

'圧縮対象ファイルがあるところのパスとファイル
対象ファイル = path & "\" & file

'圧縮先のフォルダ
圧縮Path = path & "\圧縮"

Set WShell = CreateObject("WScript.Shell")


WShell.Run Chr(34) & LhaplusPath & Chr(34) & " /c:zip /p:pw /o:" & 圧縮Path & " " & 対象ファイル


Set WShell = Nothing
End Sub

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

呼び出し元からフォルダにあるファイルを1個ずつループでまわして作成できた
パスはAccessにパスワードのようなマスタを用意してみた。
ファイルごとに異なるパスにする必要があったので。
Chr(34)を使ってダブルコーテーションを表現。
Chr(34) & LhaplusPath & Chr(34)→""" & LhaplusPath & """
としても動くはず(/・ω・)/ 自分はわかりやすいようにChr(34)をよく使うけどね
Chr()はなにげに便利だと思うんだよなぁ


ZIPファイルを自動化させるってこと普段なかったので勉強になった。
仕事でVB(VBA含む)を扱うことが多くなってきたなぁ

そのうち、解凍もって言われそうだなぁ
業務系のプログラムって地味に大変なんだよね

久々に真面目に書いてみた(/・ω・)/
関連記事
スポンサーサイト
管理者にだけ表示を許可する

この記事のトラックバックURL

http://moconaru.blog.fc2.com/tb.php/332-1dc4aedf

プロフィール

mone

Author:mone
心にぽっかり穴が空いた人間

空いた穴にはいろいろな可能性がある・・・かも

トリネシア 家系図

トリネシアの家系図

なんだか今見れないようですね(´・ω・) mone家家系図へGO

閲覧パスワードは「torinesia_mone」です。

作成日2012年4月24日
更新日2012年7月12日

本棚

自分の読み終わった、読んだ本 2012年4月ぐらいからのを登録しようかな

かうんたー

ブロとも一覧

検索フォーム

Designed by

Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。