2016-04-22 5 views
0

Мне нужна помощь в Excel VBA. У меня есть ситуация, когда мне нужно разделить на несколько данных из String. В настоящее время существует конкретный разделитель, условие - это только ключевое слово.Как разрисовывать полную строку и разбивать на несколько строк в Excel VBA?

Пример данных Полный Струнный я получил, как это:

/*ORDER FORM*/ 
Name: Randy 
Full Address: Unknown Street 123 ABC 
Phone:0246854612 
Order: 1x G Action Figure 
1x Y Action Figure 
2x Z Action Figure 

/*Fill Bank and Amount of Transfer*/ 
Bank: ABC 
Total: 2000 

/*If you Reseller, Fill Data below*/ 
Sender: 
SenderPhone: 

/*Thank you for your Order*/ 

И, из этих данных мне нужно отправить несколько данных в нескольких клеточных или переменных. Например, если я хочу это получить:

var Name = "Randy" 

var address = "Unknown Street 123 ABC" 

var phone = "0246854612" {Text format} 

var Bank = "ABC" 

var amount = 2000 

var item1 = "G Action Figure" 

var qty1 = 1 {from 1x G Action Figure} 

var item2 = "Y Action Figure" 

var qty2 = 1 

var item3 = "Z Action Figure" 

var qty3 = 2 

Как я могу достичь этого.

спасибо

ответ

0

ли всегда появляются данные в том же порядке и всегда одинаковое количество строк? Вы можете разбить всю строку, используя возврат каретки.

MySplit = Split(MyString,VbCrLf) 

А затем присвоение каждой части массива переменной.

Name = MySplit(0) 
Address = MySplit(1) 
Phone = MySplit(2) 
'...etc... 
+0

Иногда его не в том же порядке. Спасибо за вашу быструю помощь. Я попробую этот метод. –

+0

Если это так, вы можете использовать оператор CASE в левой части строки до тех пор, пока: чтобы проверить, какая переменная должна назначать каждую часть массива. –

+0

Спасибо, много, Джейсон, я немедленно попробую СЛУЧАЙ –