Fråga : VBS skrivar i makro till handtagmultipeln fodrar av data som behövs från, sparar

I've fick en .ini sparar som är ett inventarium av en PC.  En makro har skapats till handtag info ut ur den och befolkar arbeten för XLS-file

It fint, när det finns endast ett fodrar i spara med säkerhet info.  Emellertid vi önskar också att se alla skrivare en person has.

In spara, det ser like
----------------------
MappedPrinter .......: PMT: = Tesia PMT
MappedPrinter .......: TesiaPort: = Tesia
MappedPrinter .......: NVM5: = överför till det Dentrix dokumentet Center
MappedPrinter .......: XPSPort: = Microsoft XPS dokument Writer
MappedPrinter .......: Port för författare för Microsoft dokument avbilda: = Microsoft Officedokumentet avbildar Writer
MappedPrinter .......: HPFAX: = HP LaserJet 3050_3055_3390_3392 Fax
MappedPrinter .......: DOT4_001 = HP LaserJet 3050 serie
MappedPrinter för PCL 6 (kopiera 1), .......: IP_ 170.11.115.21 = Canon iR5000-6000-L1 PCL5e CP Barn
--------------

beroende av där person, de kan ha mer eller mindre skrivare.


When som jag ställer in, kodifierar liknande till den annan fields------------------
, om lämnat (xR, 13) = ”MappedPrinter” Then

celler (zZ, 23) = höger (xR, Len (xR) - 22)

, avslutar If
--------------------
This visar endast jumbon av den kartlade skrivaren info av ”IP_ 170.11.115.21 = Canon iR5000-6000-L1 PCL5e CP ladugård"

So som den behöver att kretsa på honom, varje gång den såg MappedPrinter och att skapa en stränga att ska väx (ha kanske något att sortera av jobbkorttext som in tillfogas - mellan info.
Up av VBEN skriva upptill, mig har skapat en variabel av ”printerInfoen som stränger "

Below är VBSEN kodifierar av Macro > för
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
216:
217:
218:
219:
220:
221:
222:
223:
224:
225:
226:
227:
228:
229:
230:
231:
232:
233:
234:
235:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
" codeBody " " >Option för class= " för = 48 och _, Mitt-, Asc ((xR, startPos, 1)) <= 57 eller _, Mitt-, Asc ((xR, startPos, 1)) = 45 driveSize = driveSize & mitt- (xR, startPos, 1) startPos = startPos + 1 Kretsa Om IsNumeric (driveSize), därefter driveSize = (driveSize), Avsluta om Celler (zZ, 16) = (driveSize),/1024/1024/1024 Avsluta om Om lämnat (xR, 24) = ”HardDrive ...........: C: ” Därefter 'Initialisera variabler freeSpace = "", 'Finner starten placerar av det fria utrymmet för hårt drev startPos = InStr (1, xR, ”free=”) startPos = startPos + 5 Gör mitt-, stunder Asc ((xR, startPos, 1)) >= 48 och _, Mitt-, Asc ((xR, startPos, 1)) <= 57 eller _, Mitt-, Asc ((xR, startPos, 1)) = 45 freeSpace = freeSpace & mitt- (xR, startPos, 1) startPos = startPos + 1 Om startPos > Len (xR) går ut därefter, gör Kretsa Om (freeSpace) IsNumeric därefter freeSpace = (freeSpace) Celler (zZ, 17) = (freeSpace)/1024/1024/1024 Avsluta om Avsluta om Om lämnat (xR, 6) = ”OsName” därefter Celler (zZ, 18) = högert (xR, Len (xR) - 22) Avsluta om Om lämnat (xR, 43) = ”InstalledApp ........: Microsoft Office Stan” därefter Celler (zZ, 19) = högert (xR, Len (xR) - 22) Avsluta om Om lämnat (xR, 43) = ”InstalledApp ........: Microsoft OfficeProf” därefter Celler (zZ, 20) = högert (xR, Len (xR) - 22) Avsluta om Om lämnat (xR, 9) = ”IP address” därefter Celler (zZ, 21) = högert (xR, Len (xR) - 22) Avsluta om Om lämnat (xR, 9) = ”SAVClient” därefter Celler (zZ, 22) = högert (xR, Len (xR) - 22) Avsluta om Om lämnat (xR, 13) = ”MappedPrinter” därefter Celler (zZ, 23) = högert (xR, Len (xR) - 22) Avsluta om Om lämnat (xR, 21) = ”MemoryModule ........: ” Därefter 'Initialisera variabler memSubString = "", 'Finner starten placerar av minnesbeloppet startPos = InStr (1, xR, ”size=”) startPos = startPos + 5 Gör mitt-, stunder Asc ((xR, startPos, 1)) >= 48 och _, Mitt-, Asc ((xR, startPos, 1)) <= 57 eller _, Mitt-, Asc ((xR, startPos, 1)) = 45 memSubString = memSubString & mitt- (xR, startPos, 1) startPos = startPos + 1 Kretsa Om IsNumeric (memSubString) därefter memoryTotal = memoryTotal + CInt (memSubString) Avsluta om Celler (zZ, 13) = (memoryTotal) Abs, Avsluta om Kretsa Nära nära #6 'spara memoryTotal = 0 Därefter 'flyttning därefter att fodra 'Tillfoga kolonntitelrader Celler (1, 2) = ”ReportDate”, Celler (1, 3) = ”ComputerName”, Celler (1, 4) = ”SerialNumber”, Celler (1, 5) = ”modellerar”, Celler (1, 6) = ”UserName”, Celler (1, 7) = ”PrimaryUser”, Celler (1, 8) = ”läge”, Celler (1, 9) = ”företag”, Celler (1, 10) = ”avdelning”, Celler (1, 11) = ”CPUType”, Celler (1, 12) = ”ClockSpeed”, Celler (1, 13) = ”minne”, Celler (1, 14) = ”Drive0”, Celler (1, 15) = ”Drive1”, Celler (1, 16) = ”CSize”, Celler (1, 17) = ”CFree”, Celler (1, 18) = ”OperSystem”, Celler (1, 19) = ”OfficeStandard”, Celler (1, 20) = ”OfficePro”, Celler (1, 21) = ”IP address”, Celler (1, 22) = ”AntiVirus”, Celler (1, 23) = ”MappedPrinter”, MsgBox ”avslutade sig att bearbeta!”, Avsluta suben
" klar "

Svar : VBS skrivar i makro till handtagmultipeln fodrar av data som behövs från, sparar

Byt ut ditt om meddelandet med den nedanföra snippeten… detta ska bruk en semikolondelimiter.

Du kunde repetition som denna med varje av ditt delar upp.
1:
2:
3:
4:
5:
6:
7:
Om lämnat (xR, 13) = ”MappedPrinter” därefter
                Om celler (zZ, 23) = "" därefter
                    Celler (zZ, 23) = högert (xR, Len (xR) - 22)
                Annars
                    Celler (zZ, 23) = celler (zZ, 23) & ”; ” & högert (xR, Len (xR) - 22)
                Avsluta om
            Avsluta om
Andra lösningar  
 
programming4us programming4us