vb.net

Consoleで終了・続行を選択

Console.WriteLine(String.Format("ごにゃごにゃしますがよろしいですか?{0}続行:0{0}終了:1{0}", vbCrLf)) Dim Input As String = Console.ReadLine() If Input = 1 Then Console.WriteLine(String.Empty) Console.WriteLine("処理が終了されました") Co…

エクセル カラムの幅を設定、セルの文字をセンタリング

oSheet.Columns("A").ColumnWidth = 30 'カラムの幅を設定 oRange.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter 'セルの文字をセンタリング

正規表現 除外

'「none」にマッチさせたいけど、「fill:none」と「display:none」は除外したい場合 → (?

vb.netでエクセルのFindメソッド

ちょっとメモ Dim myExcel As New Excel.Application Dim xlBooks As Excel.Workbooks : Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet : Dim xlRange As Excel.Range Dim FilePath As String = "H:\Datas.xls" Dim c As Excel.Range Dim Se…

Select Case で文字を判断

ちょっとメモ Select Case Str Case "a" To "z" Console.WriteLine(Str) End Select

フォルダ名称を取得

'ファイルのフルパスから取得 Dim FullPath As String = "C:\test1\test2\test3\test4\test5\test6\test7\test8\sample.text" Dim FolderName As String = FullPath.Split("\")(FullPath.Split("\").Count - 2) Console.WriteLine(FolderName) 'test8 'フォ…

テキストファイル書き出し

Imports System.IO Imports System.Text '--- Dim tDir As String = Path.GetDirectoryName(FL(0)) Dim files As String() = Directory.GetFiles(tDir, "*", SearchOption.AllDirectories) Dim outfilePath As String = tDir & "\out.txt" Dim enc As Encodi…

Path.GetDirectoryName の もう1つ上の階層を指定

LastIndexOf と LastIndexOfAny を使うとイイよ。 Dim FilePath As String = "G:\sample1\sample2\sample3\test.txt" Dim UpDir As String = Path.GetDirectoryName(FilePath) 'G:\sample1\sample2\sample3 Dim tempCount As Integer = UpDir.LastIndexOf("\…

EXCEL ワークシート追加、セルの書式設定を文字列に

ワークシート追加 oBook.Sheets.Add(, , 1, )'(Before As Object,After As Object,Count As Object,Type As Object) ちなみに '移動 moveSheet.Move(,targetSheet)'(Before As Object,After As Object) 'コピー copySheet.Copy(,targetSheet)'(Before As Obj…

文字列を数値に(Access データベース)

CInt(ID) '整数型 数値を文字列にするには CStr(ID) '文字列型

XML読込時DTDを参照しない(DOM使用)

Dim xmlDoc As New XmlDocument xmlDoc.XmlResolver = Nothing

DTDを参照するXMLを作成

Imports System.Runtime.InteropServices.Marshal Imports System.Xml Imports System.Xml.Linq '------------------------------------------------------- Module OutXml Sub OutXmlTest() Dim Doc As New XDocument() Dim Declaration As New XDeclaratio…

文字列 (String) いろいろ

Dim Str As String = "QWERTY12345456asdfghZXcvBNM" Dim Str2 As String = "25" Dim Str3 As String = "AA(B),CC(D),EE(F)" '左端の1文字を取得 Console.WriteLine(Str.Substring(0, 1)) 'Q '左から3番目の文字から5文字を取得 Console.WriteLine(Str.Subst…

フォルダを丸ごとコピー

My.Computer.FileSystem.CopyDirectory(DataFolder, targetDir, FileIO.UIOption.AllDialogs, FileIO.UICancelOption.DoNothing)

LINQ to XML 要素が存在するかどうかわからない場合

jojo要素があったりなかったりする場合 Dim jojo As String = c.Element("jojo").Value とするとエラーがでるよ。 そんな時はValueプロパティを使わずに、型変換すると良いよ。 Dim jojo As String jojo = CStr(c.Element("jojo")) '「要素が存在するかどう…

LINQ to XML 重複を避けて複数アイテムを取得し、並び替える

Dim query = From c In xmlDoc.Descendants("item") Where c.@type = "msw" _ Select base = c.@id, mswType = c.@type Distinct Order By mswType, base For Each c In q2 Console.WriteLine(c.mswType & " _ " & c.base) Next

LINQ to XML 重複を避けて取得

Dim query As IEnumerable(Of String) = From c In xmlDoc.Descendants("item") Where c.@type = "msw" Select c.@id Distinct

xmlをデータベースに

Microsoft Wordを操作 でとりあえず情報収集は可能になった。 ここではXMLをデータベースにして処理する方法をメモしておく。 参考サイト XMLの作成 〜LinqtoXML利用〜 Imports Microsoft.Office.Interop Imports System.Runtime.InteropServices.Marshal Im…

Microsoft Excel にデータを入力して保存

Imports Microsoft.Office.Interop Imports System.Runtime.InteropServices.Marshal --- Dim oExcel As Excel.ApplicationClass Dim oBook As Excel.WorkbookClass Dim oBooks As Excel.Workbooks 'Start Excel and open the workbook. oExcel = CreateObje…

Microsoft Wordを操作

Microsoft Wordを読み込んでみようの続き Imports Microsoft.Office.Core.MsoShapeType 図形なんかを処理したい場合はコイツもインポートしておこう。 以下は分かりやすいようにインポートせずに記載。 For Each wTable As Word.Table In wDoc.Tables 'ドキ…

Microsoft Wordを読み込んでみよう

Imports Microsoft.Office.Interop Imports System.Runtime.InteropServices.Marshal --- Dim oWord As Word.ApplicationClass 'Start Word and open the document. oWord = CreateObject("Word.Application") oWord.Visible = True oWord.Documents.Open ("…

ファイルの入出力

普通、VB6 or VBAでファイル入出力の処理をする時に、ファイル番号を任意に割り振ります。しかし、処理するファイルが沢山になってくると、ファイル番号の管理が大変になってきます。そのような時は、FreeFile関数のリターン値を使うと、今空いているファイ…

While で繰り返し処理する

Dim str As String = String.Empty Dim ErrorCount As Integer = 0 While True Console.Write("文字「a」または「b」を入力してください >") str = Console.ReadLine() '入力された値を読み込む If (str = "a") Or (str = "b") Then Console.WriteLine("入力…

値が数値か文字列か判別

Int32.TryParse Method (System) | Microsoft Docs Dim str As String : Dim i As Integer str = Console.ReadLine() '入力された値を読み込む If Integer.TryParse(str, i) Then Console.WriteLine("入力されたのは数値: {0}", i) Else Console.WriteLine("…

文字列の改行を徹底的に削除

イラストレーター 改行コード で改行の削除はとりあえず可能になったが、他所のイラスト屋さんから送られてきたイラストレーターファイルには「vbCr」では取れない物も存在した。 イカン!これではイカン!!という事で、Replace と StringReader の2段構え…

LINQ to Object で String を取得 - IEnumerable(Of String)

イラストレーターのアイテムを格納する class を作り、プロパティとしてアイテムの情報を取得させる。 Dim PName As Object Dim PNameStr As String '条件に合う文字列を「PName」に格納。 PName = From c As IllData1 In iData Where (c.Cate = 3) AndAlso …

コンソールアプリケーションでデバッグ

#If DEBUG Then ReDim Fs(0) Fs(0) = "F:\sample\a001.ai" #End If

COMオブジェクトの内部エラー 複数回トライ

COMオブジェクトの内部エラー メモリ解放でもダメなら 5回トライしてみる Imports System.Runtime.InteropServices.Marshal ... Dim IllDoc As Illustrator.Document Dim IllLay As Illustrator.Layer Dim n, i, ErrorCount As Integer Dim LayName() As St…

COMオブジェクトの内部エラー メモリ解放

vb.net で他のアプリケーションを操作していると頻発するのが an internal error occurred:PARM 直訳すれば「内部でエラーが起きたぜ」って事になるが、内部ってなんやねん。調べてみるとどうやら「COMオブジェクトの内部エラー」らしい。 ふーん ( ´_ゝ`)…

pt - mm 換算

1pt = 1/72inch = 0.3527777...mm ≒ 0.35mm (1inch = 25.4mm) ということは 2.86pt ≒ 1mm じゃあイラストレーターで実際に移動させてみよう。 IllDoc.PathItems(1).Translate(moveX, 0) ちなみに PathItems(0) はエラーになる。配列とは違うので気をつけよう…