π’ ΠΠΌΠΏΠΎΡΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΡΡΠ΅ΠΉΠΊΠΈ Excel Π² txt ΡΠ°ΠΉΠ»Ρ
ΠΡΠΎ ΡΠΊΡΠΈΠΏΡ VBA Π΄Π»Ρ Excel ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π² txt ΡΠ°ΠΉΠ»Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ ΡΡΠ΅Π΅ΠΊ Π² ΡΡΠΎΠ»Π±ΡΠ΅ B, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° Π±ΡΠ΄Π΅Ρ Π±ΡΠ°ΡΡΡΡ ΠΈΠ· ΡΡΠΎΠ»Π±ΡΠ° A. Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π΄Π»Ρ ΠΈΠΌΠΏΠΎΡΡΠ° Π²Π°ΡΠ΅ΠΉ Π³Π΅Π½Π΅ΡΠ΅Π½ΠΊΠΈ Π² ΡΠ°ΠΉΠ»Ρ ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΠΈΡ Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠΌΠΏΠΎΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ Π² ΡΡ ΠΆΠ΅ ΠΏΠ°ΠΏΠΊΡ, Π³Π΄Π΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΡΠ°ΠΌ ΡΠ°ΠΉΠ» xlsm.Π ΡΠ°ΠΉΠ»Π΅ ΠΏΡΠΈΠΌΠ΅Ρ. Π‘Π°ΠΌ ΡΠΊΡΠΈΠΏΡ VBA Π΄Π»Ρ Excel:
Sub artlayers()
Dim c As Range
Dim filePath As String
Dim fileName As String
Dim content As String
' Π‘ΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΠΏΡΡΡ ΠΊ ΡΠ°ΠΉΠ»Ρ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
filePath = ThisWorkbook.Path & "\"
' ΠΡΠΊΠ»ΡΡΠΈΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠΊΡΠ°Π½Π°
Application.ScreenUpdating = False
' ΠΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΡΡΠΎΠΊΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ
Application.StatusBar = "Π‘ΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²..."
On Error GoTo ErrorHandler ' ΠΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΎΡΠΈΠ±ΠΎΠΊ
' ΠΡΠΎΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΏΠ΅ΡΠ²ΡΡ ΡΡΡΠΎΠΊΡ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ)
For Each c In ActiveSheet.UsedRange.Columns(1).SpecialCells(xlCellTypeConstants).Offset(1, 0)
' ΠΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ, ΡΡΠΎ ΡΡΠ΅ΠΉΠΊΠ° Π½Π΅ ΠΏΡΡΡΠ°Ρ
If c.Value <> "" Then
fileName = c.Value & ".txt"
' ΠΡΠΊΡΡΡΡ ΡΠ°ΠΉΠ» Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ
Open filePath & fileName For Output As #1
' ΠΠ°ΠΏΠΈΡΡΠ²Π°Π΅ΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΈΠ· ΡΡΠΎΠ»Π±ΡΠ° B
content = Cells(c.Row, 2).Value ' Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΈΠ· ΡΡΠΎΠ»Π±ΡΠ° B
If content <> "" Then
Print #1, content ' ΠΠ°ΠΏΠΈΡΡΠ²Π°Π΅ΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π² ΡΠ°ΠΉΠ»
End If
Close #1 ' ΠΠ°ΠΊΡΡΡΡ ΡΠ°ΠΉΠ»
End If
Next c
' ΠΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠΊΡΠ°Π½Π°
Application.ScreenUpdating = True
' ΠΡΠΈΡΡΠΈΡΡ ΡΡΡΠΎΠΊΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ
Application.StatusBar = False
MsgBox "Π€Π°ΠΉΠ»Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΡΠΎΡ
ΡΠ°Π½Π΅Π½Ρ."
Exit Sub
ErrorHandler:
MsgBox "ΠΡΠΎΠΈΠ·ΠΎΡΠ»Π° ΠΎΡΠΈΠ±ΠΊΠ° ΠΏΡΠΈ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠΈ ΡΠ°ΠΉΠ»Π°: " & Err.Description
On Error Resume Next ' ΠΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΡΠΈ Π·Π°ΠΊΡΡΡΠΈΠΈ ΡΠ°ΠΉΠ»Π°
Close #1
End Sub
Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΡΠ°ΠΉΠ» ΠΏΡΠΈΠΌΠ΅Ρ:
Π ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ - ΠΈΠ· ΡΠ°ΠΉΠ»ΠΎΠ² Π² Excel Ρ ΠΏΠΈΡΠ°Π» Π·Π΄Π΅ΡΡ:
***
ΠΠΎΠ»ΡΡΠ΅ Π»Π°ΠΉΡΡ Π°ΠΊΠΎΠ² Π² ΡΠ΅Π»Π΅Π³Π΅:
ΠΠ°ΡΠ°ΡΡ Π΄ΠΈΡΠΊΡΡΡΠΈΡ