Я пытаюсь вставить столбцы данных за один раз из Excel в SQL Server. Каждая ячейка в столбце содержит формулу, чтобы сказать, что если некоторая ячейка на другом листе не пуста, выведите SQL-скрипт. Если он пуст, выведите пустое значение (""). Я выбираю и копирую эти данные с помощью кнопки (у меня есть кнопка для каждого столбца данных), прежде чем вставлять ее в новый запрос в SQL Server. Сценарий SQL получает значения ячеек в других листах - каждый столбец данных представляет собой другой лист, и каждая ячейка в столбце относится к отдельным значениям ячеек в представленном им листе.Стоп SQL Вставка пробела из Excel
Однако каждый раз, когда я вставляю данные, он содержит пустые значения, которые отображаются как пробелы.
Я попытался перепрограммировать кнопку в VBA так, чтобы она не выбрала ячейки с пустым значением, но до сих пор ничего не работало. Я использовал метод SpecialCells по-разному, но безуспешно.
Вот пример текущего кода для моих кнопок:
Sub SchemeCondition_Click()
Range("E2:E201").Select
Selection.Copy
End Sub
А вот пример формулы, которая у меня есть в каждой клетке, которая копируемого с помощью кнопки:
=IF(SchemeCondition!A2<>"","USE [PRSMaster] INSERT INTO SchemeCondition
(SchemeID, ConditionTypeID, Active, Comorbidity) VALUES(" & SchemeCondition!C2 & ",
" & SchemeCondition!D2 & ", " & SchemeCondition!E2 & ", " & SchemeCondition!F2 & ")","")
Я просто хочу остановить появление пробелов при вставке, так что мне не нужно вручную удалять их каждый раз.
Напишите сценарий загрузки VBA для SQL. Подобным образом вы можете «переводить» во время загрузки (также известный как [ETL] (https://en.wikipedia.org/wiki/Extract,_transform,_load)). Я даже не уверен, чего вы ожидаете вместо белых. Вы хотите, чтобы Excel копировал вместо NULL? – Ralph
Пожалуйста, покажите нам свой существующий код. – Calum
@Ralph Я не хочу, чтобы пространство было заменено. Мне нужно их удалить. Они представляют ячейки, содержащие пустое значение, поэтому я не нуждаюсь в них в моем запросе. – Freya