从列中的单元格中删除多余的空格(Remove extra spaces from cells in column)
我编写了以下代码来进行库存扫描条形码,但由于某些原因,当我扫描条形码时,它在单元格中添加了额外的空格,结果没有按预期显示。
如何从列中的单元格中删除多余的空格?
Option Explicit Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) If Target.Cells.Count > 1 Or IsEmpty(Target) Or Target.Column <> 1 Then Exit Sub If Not SheetExists("WarehouseInventory") Then Exit Sub Dim result As Variant Set result = Sheets("WarehouseInventory").Cells.Range("E:E").Find(Target) If result Is Nothing Then Target.Worksheet.Cells(Target.Row, 2) = "Data Maybe Bin #?" Else Target.Worksheet.Cells(Target.Row, 2) = result.Worksheet.Cells(result.Row, 4) Target.Worksheet.Cells(Target.Row, 3) = result.Worksheet.Cells(result.Row, 5) Target.Worksheet.Cells(Target.Row, 4) = result.Worksheet.Cells(result.Row, 6) Target.Worksheet.Cells(Target.Row, 5) = result.Worksheet.Cells(result.Row, 7) End If End Sub Public Function SheetExists(SheetName As String) As Boolean Dim ws As Worksheet SheetExists = False For Each ws In ThisWorkbook.Worksheets If ws.Name = SheetName Then SheetExists = True Next ws End Function
条形码将在A列上扫描
I wrote the following code to do inventory scanning bar-codes but for some reason when I scan the bar-code it is adding extra spaces in the cells and the result are not showing up as expected.
How do I remove the extra spaces from the cells in column?
Option Explicit Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) If Target.Cells.Count > 1 Or IsEmpty(Target) Or Target.Column <> 1 Then Exit Sub If Not SheetExists("WarehouseInventory") Then Exit Sub Dim result As Variant Set result = Sheets("WarehouseInventory").Cells.Range("E:E").Find(Target) If result Is Nothing Then Target.Worksheet.Cells(Target.Row, 2) = "Data Maybe Bin #?" Else Target.Worksheet.Cells(Target.Row, 2) = result.Worksheet.Cells(result.Row, 4) Target.Worksheet.Cells(Target.Row, 3) = result.Worksheet.Cells(result.Row, 5) Target.Worksheet.Cells(Target.Row, 4) = result.Worksheet.Cells(result.Row, 6) Target.Worksheet.Cells(Target.Row, 5) = result.Worksheet.Cells(result.Row, 7) End If End Sub Public Function SheetExists(SheetName As String) As Boolean Dim ws As Worksheet SheetExists = False For Each ws In ThisWorkbook.Worksheets If ws.Name = SheetName Then SheetExists = True Next ws End Function
Barcode will be scan on column A
原文:https://stackoverflow.com/questions/30230269
最满意答案
如果它有一个或多个空格作为输入,则您的条件将失败。
你应该总是
trim()
然后检查长度是否为0即
user.trim().length==0
另外如果要检查内容,请始终使用
equals
而不是==
Your condition will fail if it has one or more spaces as inputs.
You should always
trim()
and then check if the length is 0i.e
user.trim().length==0
also If you want to check contents always use
equals
instead of==
相关问答
更多-
关于什么 if ( [string length] <= 0 ) what about if ( [string length] <= 0 )
-
JavaFX-如何避免从TextField加载空值?(JavaFX-how to avoid loading null values from whatever to TextField?)[2022-04-28]
假设您无法检查数据库中出现的数据库是否存在空值,您可以执行类似的操作 var myText = txt_field.getText(); if(myText != null && myText.length > 15) { // do stuff } Assuming you cannot check the database coming out of the database for nullness, you could do something like var myText = txt_ ... -
你应该使用“==”代替调用equals来检查null,而不是: if (svar.getText() == null) { 你得到NPE(NullPointerException)的原因是,因为你说svar.getText()为null,你试图在null上调用equals和NPE的原因。 Instead of calling equals to check for null, you should use "==" like: if (svar.getText() == null) { Reason ...
-
这是一个错误,与“从场景图中删除节点”有关。 它仍然没有修复,计划在Open JFX 11中发布。我不确定何时可以期待发布,因为JavaFX正在从JDK中分离出来,而且这个问题已经开放两年了。 该票包括一个最小的例子,所以可能最好的你可以希望找到一个相关性,如何操纵场景图和解决问题。 请参阅: https : //bugs.openjdk.java.net/browse/JDK-8163078 It's a bug, related to "removing a Node from the scene gr ...
-
通过删除提交并将INSERT添加到格式良好的方法来修复它: @FXML private void handleSaveNewShop(ActionEvent event) { String name = shopname.getText(); String adress = streetadress.getText(); String city = cityname.getText(); String state = statename.getText(); Str ...
-
什么是TextField的“内部”(What's “inside” the TextField)[2022-07-22]
textField.getText()返回一个java String 。 Java String是一个Object因此您应该使用equals()方法而不是==来比较字符串。 ==运算符用于比较Java中的基元类型。 为了更好地理解这一点,请查看这个如何比较Java中的字符串? 用于Java中字符串比较的Q / A. 正如我所说,你可以使用textField.getText().equals("")来检查String空白,但它的常见用法是: if (textField.getText() != nu ... -
绑定绑定在绑定时绑定到属于当前收件人的属性。 如果recipient的值发生变化,那么,例如, address.textProperty仍将绑定到recipient的先前值的addressProperty() ,而不是新的。 您可以使用收件人上的侦听器绑定和取消绑定控件: recipient.addListener((obs, oldRecipient, newRecipient) -> { if (oldRecipient != null) { type.valueProperty ...
-
这是因为在将字符添加到文本字段之前调用handle() 。 每次打字时,都会发生以下情况: 调用handle方法,它检查字符,清除文本字段。 然后,文本字段在从方法返回后将字符添加到文本字段。 有一个名为consume()的方法可以阻止事件进一步传播。 只要条件为真,您就可以使用它,这将阻止添加空间。 if (Character.isWhitespace(e.getCharacter().charAt(0))) { System.out.println(field.getText()); fie ...
-
如果它有一个或多个空格作为输入,则您的条件将失败。 你应该总是trim()然后检查长度是否为0 即 user.trim().length==0 另外如果要检查内容,请始终使用equals而不是== Your condition will fail if it has one or more spaces as inputs. You should always trim() and then check if the length is 0 i.e user.trim().length==0 also ...
-
例如,有几种方便的方法可以做到这一点 weightTF.setOnKeyPressed(new EventHandler
() { @Override public void handle(KeyEvent event) { // do stuff } }); 只要在TextField中按下某个键,就会执行此操作。 您可能想要检查按下的键是否是特定键。 这可以通过以下方式实现 if(event.getCode() == KeyCode.TAB){ ...