2016-06-01 5 views
-1

У меня есть данные в Excel лист, с заголовками на 1-й Роу, я хочу, чтобы обрезать их, как показано нижеОбрезать текст в VBA

Например

CT_CD_FILTER_AMT * _Integer

Change to 

CT_CD_FILTER_AMT

Каждый столбец столбца отличается .. и количество столбцов также отличается от каждого файла

Итак, я хочу выбрать значение каждого столбца и обрезать его до тех пор, пока он не достигнет пустой ячейки (только строка1)

Помощь с помощью кода.

TIA.

+0

Специалисты здесь могут быть в состоянии предложить вам надлежащий курс, который будет принято, если вы можете изменить свой вопрос, чтобы показать около 4 репрезентативных значений данных, включающих наихудших сценарии варьирования данных. – skkakkar

ответ

0
Sub mac1() 
Dim LastCol As Integer 
Sheets("MySheet").Select 
LastCol = Cells(1, 1).End(xlToRight).Column 
For Each C In Range(Cells(1, 1), Cells(1, LastCol)) 
    C.Value = Left(C.Value, InStr(C.Value, "") - 1) 
Next C 
End Sub 

Или

Sub mac2() 
Dim Col As Integer 
Col = 1 
Do While Cells(1, Col).Value <> "" 
    Cells(1, Col).Value = Left(Cells(1, Col).Value, InStr(Cells(1, Col).Value, "") - 1) 
    Col = Col + 1 
Loop 
End Sub 
+0

У меня есть код для обрезки текста, и я дал ряд определенных ячеек с кодом его работы, но я не хочу давать конкретный диапазон, а не делать «до пустой ячейки». Для каждого диапазона C In («B1: Z1») Если InStr (C.Value, «*»)> 0, тогда C.Value = Left (C.Value, InStr (C.Value, «*») - 1) End Если Next C –

+0

Извините, что я отправляю с смартфона, вот почему его непонятно .. –

+0

Проверьте это сейчас. – Limak

Смежные вопросы